No description
Find a file
2025-04-11 13:36:52 -04:00
dev maybe that'll resolve our database woes 2025-04-11 12:00:22 -04:00
resources ? 2025-04-11 13:36:52 -04:00
src/com ? 2025-04-11 13:36:52 -04:00
vendor ? 2025-04-11 13:36:52 -04:00
.dockerignore prep for fly 2025-03-14 18:11:39 -04:00
.DS_Store biff-sqlite starter 2025-03-11 19:42:37 -04:00
.gitignore jar stuff. rename ns 2025-03-14 16:48:59 -04:00
.projectile buncha stuff. favicon, shorter codes, code uniqueness check, comments, more vendoring 2025-03-17 18:58:08 -04:00
build.clj jar stuff. rename ns 2025-03-14 16:48:59 -04:00
cljfmt-indents.edn biff-sqlite starter 2025-03-11 19:42:37 -04:00
deps.edn ? 2025-04-11 13:36:52 -04:00
Dockerfile prep for fly 2025-03-14 18:11:39 -04:00
fly.toml prep for fly 2025-03-14 18:11:39 -04:00
LICENSE biff-sqlite starter 2025-03-11 19:42:37 -04:00
Makefile ? 2025-04-11 13:36:52 -04:00
README.md biff-sqlite starter 2025-03-11 19:42:37 -04:00
server-setup.sh biff-sqlite starter 2025-03-11 19:42:37 -04:00

biff-sqlite

This is a modified version of biff-postgres to use SQLite. In addition to replacing PostgreSQL with SQLite, I've also:

  • removed tailwind (in favor of pico.css) and recaptcha
  • removed all links to unpkg by vendoring all css and js directly
  • brought in HoneySQL to replace writing raw SQL
  • brought in Migratus to manage migrations
  • attempted to silence all kondo warnings

getting started

MY_PROJECT_NAME="dashboard-for-ynab"
git clone https://git.sr.ht/~luciano/biff-sqlite $MY_PROJECT_NAME
cd $MY_PROJECT_NAME
rm -rf .git
git init
git add .
git commit -m "biff-sqlite starter"
clj-kondo --lint "$(clojure -Spath)" --dependencies --parallel --copy-configs
clj -M:dev dev

Run clj -M:dev dev like usual and then connect with a REPL on :7888.

You may want to rename the com.biffweb namespace prefix to your own, as well as change the strings my_project and my-project everywhere they're present. That's left as an exercise for the reader at this time.

Deploying to production

I intend to deploy projects built off this template with fly.io but I haven't set everything up for that just yet. Essentially you need to configure a fly volume, make an SQLite db there, then point the #prod DB_URL at it.