Progressively enhance HTML with lightweight JavaScript libraries. No build tools and no compiling necessary. Most libraries should be 10 KB or less (minified).
Sometimes you don't need an entire SPA framework just to load a progress spinner.
Yeah, probably.
- Fork this repo
- Update
data/libraries.json
following the current examples - Make a PR
- ???
- Profit!
unsuckjs.com looks like a static site (and it mostly is), but I wanted to fetch repository metadata dynamically without having to re-run a static site generator on a schedule. So, I used my personal static site framework, coltrane to write most of the content in Markdown, but still have the flexibility of using Django templatetags
for server-side functionality. It's the best of both worlds.
Also, because it's my site and I wanted to. 🥹
git clone
this repocd
into the newly created directoryuv install -r pyproject.toml
- Create a personal access token at https://github.com/settings/tokens
cp .env.example .env
- Update
.env
with your GitHub username and personal access token that was just created uv run coltrane play
; note: this will take a while on the first load because it hits the GitHub API for every library individually
npm install -g uncss
- Make sure that the regular CSS files are enabled in the template
- Make sure the site is running in another terminal
uncss http://localhost:8000 --output site/static/css/unsuckjs.min.css -n
source .venv/bin/activate
uv pip install -e ../coltrane/
coltrane play