curl -fsSL https://raw.githubusercontent.com/thijs-creemers/boundary-starter/main/scripts/bootstrap.sh | bash
cd boundary-starter
bb setup
The fastest way to get started is the bootstrap script, which downloads only the starter essentials:
curl -fsSL https://raw.githubusercontent.com/thijs-creemers/boundary-starter/main/scripts/bootstrap.sh | bash
cd boundary-starter
bb setup
This gives you:
SQLite database (zero-config for development)
HTTP server on port 3000
A complete Integrant system
REPL-driven development workflow
A production-ready Dockerfile
export JWT_SECRET="change-me-dev-secret-min-32-chars"
export BND_ENV="development"
clojure -M:repl-clj
In the REPL:
(require '[integrant.repl :as ig-repl])
(require 'conf.dev.system)
(ig-repl/go)
;; => System started. Visit http://localhost:3000
bb scaffold
The interactive wizard walks you through creating a module. For example, a product module:
bb scaffold generate \
--module-name product \
--entity Product \
--field name:string:required \
--field sku:string:required:unique \
--field price:decimal:required
# Apply the generated migration
clojure -M:migrate up
Then reload the system to pick up the new routes:
(ig-repl/reset)
;; => Visit http://localhost:3000/admin/products
# All tests
clojure -M:test:db/h2
# Watch mode during development
clojure -M:test:db/h2 --watch --focus-meta :unit
Your First Module — understand what the scaffolder generated
Functional Core / Imperative Shell — the pattern behind everything
Testing — unit, integration, and contract tests
Can you improve this documentation?Edit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |