diff --git a/.gitignore b/.gitignore
index 9b5e2e844964d81839c3a08e41fd6ac395a1187f..6d3f79c31e030b848314eb6933c0e18bed38e086 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
 *~
 __pycache__
+dist/
diff --git a/.gitmodules b/.gitmodules
index 223ad5a5600becc37fa15bbb1bf784d2a2e7b033..28d2003803b7927f3fa0b8061221590915862c50 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,3 @@
 [submodule "static/artwork"]
-	path = static/artwork
+	path = pelican_theme_teckids/static/artwork
 	url = https://edugit.org/Teckids/team-pr/Artwork.git
diff --git a/pelican_theme_teckids/__init__.py b/pelican_theme_teckids/__init__.py
new file mode 100644
index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391
diff --git a/pelicanconf.py b/pelican_theme_teckids/pelicanconf.py
similarity index 100%
rename from pelicanconf.py
rename to pelican_theme_teckids/pelicanconf.py
diff --git a/static/artwork b/pelican_theme_teckids/static/artwork
similarity index 100%
rename from static/artwork
rename to pelican_theme_teckids/static/artwork
diff --git a/static/css/bootstrap.min.css b/pelican_theme_teckids/static/css/bootstrap.min.css
similarity index 100%
rename from static/css/bootstrap.min.css
rename to pelican_theme_teckids/static/css/bootstrap.min.css
diff --git a/static/css/style.css b/pelican_theme_teckids/static/css/style.css
similarity index 100%
rename from static/css/style.css
rename to pelican_theme_teckids/static/css/style.css
diff --git a/static/fonts/glyphicons-halflings-regular.eot b/pelican_theme_teckids/static/fonts/glyphicons-halflings-regular.eot
similarity index 100%
rename from static/fonts/glyphicons-halflings-regular.eot
rename to pelican_theme_teckids/static/fonts/glyphicons-halflings-regular.eot
diff --git a/static/fonts/glyphicons-halflings-regular.svg b/pelican_theme_teckids/static/fonts/glyphicons-halflings-regular.svg
similarity index 100%
rename from static/fonts/glyphicons-halflings-regular.svg
rename to pelican_theme_teckids/static/fonts/glyphicons-halflings-regular.svg
diff --git a/static/fonts/glyphicons-halflings-regular.ttf b/pelican_theme_teckids/static/fonts/glyphicons-halflings-regular.ttf
similarity index 100%
rename from static/fonts/glyphicons-halflings-regular.ttf
rename to pelican_theme_teckids/static/fonts/glyphicons-halflings-regular.ttf
diff --git a/static/fonts/glyphicons-halflings-regular.woff b/pelican_theme_teckids/static/fonts/glyphicons-halflings-regular.woff
similarity index 100%
rename from static/fonts/glyphicons-halflings-regular.woff
rename to pelican_theme_teckids/static/fonts/glyphicons-halflings-regular.woff
diff --git a/static/fonts/glyphicons-halflings-regular.woff2 b/pelican_theme_teckids/static/fonts/glyphicons-halflings-regular.woff2
similarity index 100%
rename from static/fonts/glyphicons-halflings-regular.woff2
rename to pelican_theme_teckids/static/fonts/glyphicons-halflings-regular.woff2
diff --git a/static/images/partners/fsfe.png b/pelican_theme_teckids/static/images/partners/fsfe.png
similarity index 100%
rename from static/images/partners/fsfe.png
rename to pelican_theme_teckids/static/images/partners/fsfe.png
diff --git a/static/images/partners/osi.png b/pelican_theme_teckids/static/images/partners/osi.png
similarity index 100%
rename from static/images/partners/osi.png
rename to pelican_theme_teckids/static/images/partners/osi.png
diff --git a/static/images/sponsors/informatik_aktuell.png b/pelican_theme_teckids/static/images/sponsors/informatik_aktuell.png
similarity index 100%
rename from static/images/sponsors/informatik_aktuell.png
rename to pelican_theme_teckids/static/images/sponsors/informatik_aktuell.png
diff --git a/static/images/sponsors/proxmox.png b/pelican_theme_teckids/static/images/sponsors/proxmox.png
similarity index 100%
rename from static/images/sponsors/proxmox.png
rename to pelican_theme_teckids/static/images/sponsors/proxmox.png
diff --git a/static/images/sponsors/pysv.png b/pelican_theme_teckids/static/images/sponsors/pysv.png
similarity index 100%
rename from static/images/sponsors/pysv.png
rename to pelican_theme_teckids/static/images/sponsors/pysv.png
diff --git a/static/images/sponsors/speedpartner.png b/pelican_theme_teckids/static/images/sponsors/speedpartner.png
similarity index 100%
rename from static/images/sponsors/speedpartner.png
rename to pelican_theme_teckids/static/images/sponsors/speedpartner.png
diff --git a/static/js/bootstrap.min.js b/pelican_theme_teckids/static/js/bootstrap.min.js
similarity index 100%
rename from static/js/bootstrap.min.js
rename to pelican_theme_teckids/static/js/bootstrap.min.js
diff --git a/static/js/jquery.min.js b/pelican_theme_teckids/static/js/jquery.min.js
similarity index 100%
rename from static/js/jquery.min.js
rename to pelican_theme_teckids/static/js/jquery.min.js
diff --git a/templates/archives.html b/pelican_theme_teckids/templates/archives.html
similarity index 100%
rename from templates/archives.html
rename to pelican_theme_teckids/templates/archives.html
diff --git a/templates/article.html b/pelican_theme_teckids/templates/article.html
similarity index 100%
rename from templates/article.html
rename to pelican_theme_teckids/templates/article.html
diff --git a/templates/author.html b/pelican_theme_teckids/templates/author.html
similarity index 100%
rename from templates/author.html
rename to pelican_theme_teckids/templates/author.html
diff --git a/templates/base.html b/pelican_theme_teckids/templates/base.html
similarity index 100%
rename from templates/base.html
rename to pelican_theme_teckids/templates/base.html
diff --git a/templates/page.html b/pelican_theme_teckids/templates/page.html
similarity index 100%
rename from templates/page.html
rename to pelican_theme_teckids/templates/page.html
diff --git a/templates/page_text.html b/pelican_theme_teckids/templates/page_text.html
similarity index 100%
rename from templates/page_text.html
rename to pelican_theme_teckids/templates/page_text.html
diff --git a/templates/translations.html b/pelican_theme_teckids/templates/translations.html
similarity index 100%
rename from templates/translations.html
rename to pelican_theme_teckids/templates/translations.html
diff --git a/pyproject.toml b/pyproject.toml
new file mode 100644
index 0000000000000000000000000000000000000000..2f18402183c1d612f8db04ca4f3232ad7b0fe263
--- /dev/null
+++ b/pyproject.toml
@@ -0,0 +1,16 @@
+[tool.poetry]
+name = "pelican-theme-teckids"
+version = "0.0"
+description = "Pelican theme for Teckids websites"
+authors = ["Dominik George <dominik.george@teckids.org>"]
+license = "CC-BY-SA"
+exclude = ["**/.git"]
+
+[tool.poetry.dependencies]
+python = ">2.0"
+
+[tool.poetry.dev-dependencies]
+
+[build-system]
+requires = ["poetry-core>=1.0.0"]
+build-backend = "poetry.core.masonry.api"