Skip to content

Getting Started ​

There are two different starting points, depending on what you're doing:

  • Self-hosting Trove for your own household → Docker Compose self-hosting. Three commands; Docker builds the images from source on first run (allow 5-15 minutes), so you need Docker but no JDK or Node.
  • Building or contributing to Trove → Local development. Runs the Spring Boot server and the web/mobile clients straight from source, against a Postgres container, with no Docker image build in the loop.

The three-command version (self-hosting) ​

bash
git clone https://github.com/Harnoor6693/trove && cd trove/deploy
./trove bootstrap
./trove up

./trove bootstrap writes deploy/.env with generated secrets, asks for your domain, Let's Encrypt email, first admin email and country (CA or US), and prints the admin password once. You do not need to copy .env.example first. If a deploy/.env already exists, ./trove bootstrap completes it instead: it fills in only the placeholder settings and empty secrets and never overwrites a value you set. The TLS mode is set by TROVE_TLS_MODE in deploy/.env (default acme-http), not prompted for. ./trove up then builds and starts the stack: the web UI container, core (the one Spring Boot module) and PostgreSQL, behind Traefik. Full detail — sizing, TLS modes, backup/restore, troubleshooting — is in deploy/README.md.

What you get ​

One web UI, served over your own domain. One optional mobile app (iOS/Android), connected by pointing it at that same domain from its connect screen — see mobile build. No account with any third-party service is created; the only outbound calls the server makes are the ones you opt into (an AI endpoint, a webhook target, SimpleFIN if you connect a bank that way) — see "What leaves your server".

Where to go next ​

Released under the AGPL-3.0-or-later License.