Territory Bro is a tool for managing territory cards in the congregations of Jehovah's Witnesses.
For more information, see https://territorybro.com
The easiest way to run this application is to use Docker.
Start the database
docker compose pull
docker compose up -d db
Start the application
docker compose up -d
The application will run at http://localhost:8080
Stop the application
docker compose stop
Stop the application and remove all data
docker compose down
The tools for developing this project are Java JDK, Leiningen, Node.js and Docker. It might also be useful to have the PostgreSQL command line tools, even if you run the database with Docker.
Start the database
docker compose up -d db
Start the API backend
lein repl
(start)
Restart the API backend, reloading code changes
(reset)
Start the web frontend
npm install
npm run start
The application will run at http://localhost:8080
Run tests
lein test
npm run test
Run tests automatically on change
lein autotest
npm run autotest
View storybook visual tests
npm run storybook
Upgrade dependencies
lein ancient upgrade :all :check-clojure :no-tests
npm run upgrade
Download dependency sources
lein pom
mvn dependency:sources
Produce canonical XML for better diffs
xmllint --c14n11 example.qgs > resources/template-territories.qgs
The new server-side rendered UI will run at http://localhost:8081, and it shares session cookies with the SPA UI at http://localhost:8080
Build the frontend assets for the backend
npm run build
Build the CSS assets automatically during development
npm run autobuild
Copyright © 2015-2023, Esko Luontola
This software is released under the Apache License 2.0.