diff --git a/requirements-dev.txt b/requirements-dev.txt
new file mode 100644
index 0000000000000000000000000000000000000000..f328b3eab78c234bf142fdff311aa5a2054fadb8
--- /dev/null
+++ b/requirements-dev.txt
@@ -0,0 +1,8 @@
+libsass==0.19.4
+jsmin==2.2.2
+watchdog==0.10.2
+
+# ancient jsmin requires ancient setuptools
+setuptools<=58
+
+# binary dependencies: apt install build-essential
diff --git a/requirements.txt b/requirements.txt
deleted file mode 100644
index ac08b308c4d23b93ec0855c394a75b0b4afa72c6..0000000000000000000000000000000000000000
--- a/requirements.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-libsass==0.19.4
-jsmin==2.2.2
-watchdog==0.10.2
diff --git a/setup.py b/setup.py
index 7ac69a9af524a2fa7c9557fa9f170c66488c2bd1..34480eb0930de52c0fd3363b5e114f0d83afad1f 100644
--- a/setup.py
+++ b/setup.py
@@ -18,9 +18,8 @@ setup(
     author_email='tim.fechner@hs-hannover.de',
     zip_safe=False,
     install_requires=[
-        'libsass==0.19.4',
-        'jsmin==3.0.0',
-        'watchdog==0.10.2'
+        # ⚠️ keep this empty because production servers don't compile sass or minimize js
+        # ⚠️ so production setup doesn't have to suffer suffer from tons of optional heavyweight compiled binary dependencies
     ],
     classifiers=[
         'Environment :: Web Environment',