What this is
Pieter Levels ships Nomad List, Remote OK, Rebase, PhotoAI, and a handful of others on this exact stack. He’s open about it, vanilla PHP, jQuery, SQLite, one VPS. Combined revenue past $200k/month. The point isn’t ‘PHP is good’, it’s ‘shipping is good’.
When to pick this stack
- You’re solo or near-solo and value cycle time over architectural elegance.
- You don’t want to maintain a build pipeline, a node_modules, a CI matrix, and a Dockerfile for a side project that may or may not work.
- You can edit a
.phpfile in vim, refresh the browser, and ship.
What we’d swap
- jQuery → Alpine.js: keeps the HTML-first approach but is 10kb instead of 90kb and uses modern syntax.
- Vanilla PHP → Laravel: if the project grows enough that you start wishing for an ORM. See Laravel + Livewire.
- SQLite → MySQL: only if you cross some absurd write-throughput threshold; for ~99% of indie projects SQLite is fine.
Common gotchas
- Pieter himself doesn’t recommend this for teams. The ‘edit prod and refresh’ loop relies on owning all the code in your head.
- Backup. The whole product is in
database.sqlite. Set up rsync or litestream from day one.