diff --git a/.Rprofile b/.Rprofile
new file mode 100644
index 0000000000000000000000000000000000000000..9ebe2297f2ea2c2e2552f86e60ab8e7e5c82ad77
--- /dev/null
+++ b/.Rprofile
@@ -0,0 +1,8 @@
+## This makes sure that R loads the workflowr package
+## automatically, everytime the project is loaded
+if (requireNamespace("workflowr", quietly = TRUE)) {
+  message("Loading .Rprofile for the current workflowr project")
+  library("workflowr")
+} else {
+  message("workflowr package not installed, please run install.packages(\"workflowr\") to use the workflowr functions")
+}
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000000000000000000000000000000000000..ddfab8d26a7acda39136fc2360236394f043d9b0
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,3 @@
+# Classify R Markdown files as R code for GitHub language statistics
+# https://github.com/github/linguist#overrides
+*.[Rr]md linguist-language=R
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..e44796f25600dce50ce0a909cfb9426335b69530
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,11 @@
+.Rproj.user
+.Rhistory
+.RData
+.Ruserdata
+.Rapp.history
+.DS_Store
+analysis/figure
+analysis/*png
+analysis/*html
+analysis/*_cache
+analysis/site_libs
diff --git a/README.md b/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..fce7ed85f7f138175da395c9319c734ecf03531f
--- /dev/null
+++ b/README.md
@@ -0,0 +1,5 @@
+# chipseq-pipeline
+
+A [workflowr][] project.
+
+[workflowr]: https://github.com/workflowr/workflowr
diff --git a/_workflowr.yml b/_workflowr.yml
new file mode 100644
index 0000000000000000000000000000000000000000..37512853e06c37ac20d838706c0ff756121c1916
--- /dev/null
+++ b/_workflowr.yml
@@ -0,0 +1,8 @@
+# workflowr options
+# Version 1.7.0
+
+# The seed to use for random number generation. See ?set.seed for details.
+seed: 20220209
+# The working directory to build the R Markdown files. The path is relative to
+# _workflowr.yml. See ?rmarkdown::render for details.
+knit_root_dir: "."
diff --git a/analysis/_site.yml b/analysis/_site.yml
new file mode 100644
index 0000000000000000000000000000000000000000..3fbaec74563a59298630ffa76a0c492a89e98c33
--- /dev/null
+++ b/analysis/_site.yml
@@ -0,0 +1,17 @@
+name: "chipseq-pipeline"
+output_dir: ../docs
+navbar:
+  title: "chipseq-pipeline"
+  left:
+  - text: Home
+    href: index.html
+  - text: About
+    href: about.html
+  - text: License
+    href: license.html
+output:
+  workflowr::wflow_html:
+    toc: yes
+    toc_float: yes
+    theme: cosmo
+    highlight: textmate
diff --git a/analysis/about.Rmd b/analysis/about.Rmd
new file mode 100644
index 0000000000000000000000000000000000000000..40e8aac5bc91132e89cca29c3e3eeca040363dc2
--- /dev/null
+++ b/analysis/about.Rmd
@@ -0,0 +1,10 @@
+---
+title: "About"
+output:
+  workflowr::wflow_html:
+    toc: false
+editor_options:
+  chunk_output_type: console
+---
+
+Describe your project.
diff --git a/analysis/index.Rmd b/analysis/index.Rmd
new file mode 100644
index 0000000000000000000000000000000000000000..f080ac8f9ac28001c37a40c5cfd3cfefafa2e9b5
--- /dev/null
+++ b/analysis/index.Rmd
@@ -0,0 +1,11 @@
+---
+title: "Home"
+site: workflowr::wflow_site
+output:
+  workflowr::wflow_html:
+    toc: false
+editor_options:
+  chunk_output_type: console
+---
+
+Welcome to my research website.
diff --git a/analysis/license.Rmd b/analysis/license.Rmd
new file mode 100644
index 0000000000000000000000000000000000000000..fa2079677972923ec06ae75eecd9ec02d57629d6
--- /dev/null
+++ b/analysis/license.Rmd
@@ -0,0 +1,21 @@
+---
+title: "License"
+output:
+  workflowr::wflow_html:
+    toc: false
+editor_options:
+  chunk_output_type: console
+---
+
+What license are you using for your code? See [choosealicense.com][choose] for
+help deciding. It's a convention to save a file `LICENSE` in the root of your
+Git repo that contains the license text.
+
+What license are you using for the written content on your site? It is
+traditional to choose a [Creative Commons][cc] license for this type of content.
+
+[choose]: https://choosealicense.com/
+[cc]: https://creativecommons.org/choose/
+
+How should others cite your work? It's a convention to save a file `CITATION`
+in the root of your Git repo that contains the citation information.
diff --git a/chipseq-pipeline.Rproj b/chipseq-pipeline.Rproj
new file mode 100644
index 0000000000000000000000000000000000000000..b1d7e6365ab3da8c8de6c19d504948e527a5f398
--- /dev/null
+++ b/chipseq-pipeline.Rproj
@@ -0,0 +1,16 @@
+Version: 1.0
+
+RestoreWorkspace: No
+SaveWorkspace: No
+AlwaysSaveHistory: Yes
+
+EnableCodeIndexing: Yes
+UseSpacesForTab: Yes
+NumSpacesForTab: 2
+Encoding: UTF-8
+
+RnwWeave: Sweave
+LaTeX: pdfLaTeX
+
+AutoAppendNewline: Yes
+StripTrailingWhitespace: Yes
diff --git a/code/README.md b/code/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..4c2402fd9d755278177f69df0c97cfb4fe8ccbf8
--- /dev/null
+++ b/code/README.md
@@ -0,0 +1,3 @@
+# Code
+
+Save command-line scripts and shared R code here.
diff --git a/data/README.md b/data/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..7f465df2aa1b72e6c1bf6af387a35e3c35be8a8d
--- /dev/null
+++ b/data/README.md
@@ -0,0 +1,3 @@
+# Data
+
+Save raw data files here.
diff --git a/docs/.nojekyll b/docs/.nojekyll
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/output/README.md b/output/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..fa9512c0284cd6a95c0e2a81e6c16785b185b539
--- /dev/null
+++ b/output/README.md
@@ -0,0 +1,3 @@
+# Output
+
+Save processed data files here.