diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..0024530e7f106c06e9f015174a49c159af311937
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,10 @@
+image: ruby:2.7
+
+pages:
+  script:
+    - gem install bundler
+    - bundle install
+    - bundle exec jekyll build -d public
+  artifacts:
+    paths:
+      - public
diff --git a/Gemfile b/Gemfile
new file mode 100644
index 0000000000000000000000000000000000000000..8d6fe1a80c77ad2306d1dacbe55da377e7e015b4
--- /dev/null
+++ b/Gemfile
@@ -0,0 +1,4 @@
+source "https://rubygems.org"
+
+gem "jekyll"
+
diff --git a/_config.yml b/public/_config.yml
similarity index 100%
rename from _config.yml
rename to public/_config.yml
diff --git a/_includes/footer.html b/public/_includes/footer.html
similarity index 100%
rename from _includes/footer.html
rename to public/_includes/footer.html
diff --git a/_layouts/home.html b/public/_layouts/home.html
similarity index 100%
rename from _layouts/home.html
rename to public/_layouts/home.html
diff --git a/_layouts/page.html b/public/_layouts/page.html
similarity index 100%
rename from _layouts/page.html
rename to public/_layouts/page.html
diff --git a/annotations/README.md b/public/annotations/README.md
similarity index 100%
rename from annotations/README.md
rename to public/annotations/README.md
diff --git a/collections/README.md b/public/collections/README.md
similarity index 100%
rename from collections/README.md
rename to public/collections/README.md
diff --git a/images/README.md b/public/images/README.md
similarity index 100%
rename from images/README.md
rename to public/images/README.md
diff --git a/index.md b/public/index.md
similarity index 100%
rename from index.md
rename to public/index.md
diff --git a/manifests/README.md b/public/manifests/README.md
similarity index 100%
rename from manifests/README.md
rename to public/manifests/README.md
diff --git a/manifests/test3.json b/public/manifests/test3.json
similarity index 100%
rename from manifests/test3.json
rename to public/manifests/test3.json
diff --git a/manifests/test4.json b/public/manifests/test4.json
similarity index 100%
rename from manifests/test4.json
rename to public/manifests/test4.json
diff --git a/manifests/test5.json b/public/manifests/test5.json
similarity index 100%
rename from manifests/test5.json
rename to public/manifests/test5.json
diff --git a/plugins/annona/index.md b/public/plugins/annona/index.md
similarity index 100%
rename from plugins/annona/index.md
rename to public/plugins/annona/index.md
diff --git a/plugins/js/content-state.js b/public/plugins/js/content-state.js
similarity index 100%
rename from plugins/js/content-state.js
rename to public/plugins/js/content-state.js
diff --git a/plugins/js/image.js b/public/plugins/js/image.js
similarity index 100%
rename from plugins/js/image.js
rename to public/plugins/js/image.js
diff --git a/plugins/justified/jquery.justifiedGallery.min.js b/public/plugins/justified/jquery.justifiedGallery.min.js
similarity index 100%
rename from plugins/justified/jquery.justifiedGallery.min.js
rename to public/plugins/justified/jquery.justifiedGallery.min.js
diff --git a/plugins/justified/justifiedGallery.min.css b/public/plugins/justified/justifiedGallery.min.css
similarity index 100%
rename from plugins/justified/justifiedGallery.min.css
rename to public/plugins/justified/justifiedGallery.min.css
diff --git a/plugins/osd/index.md b/public/plugins/osd/index.md
similarity index 100%
rename from plugins/osd/index.md
rename to public/plugins/osd/index.md