Self-hosting LogIt
Run your own sync server and web dashboard. Free, no account with us required, and your data stays on infrastructure you control.
Requirements
- Docker and Docker Compose (bundled with modern Docker installs)
- Somewhere to run it — your own machine for local use, or any server/VPS to make it reachable from your phone
1. Get the files
git clone https://github.com/Martin-Melody/LogIt.git
cd LogIt2. Configure secrets
cp .env.example .env Edit .env and fill in:
JWT_SECRET— generate withopenssl rand -base64 48ADMIN_KEY— any value you choose, used to access the admin endpoints
.env is gitignored and never committed — keep
these values private, they're what protects everyone's accounts on your server.
3. Start it
docker compose up -d This starts two services: the sync API (port 8080)
and the web analytics dashboard (port 3000).
Workout data is stored in SQLite, persisted in a Docker volume so it survives restarts.
4. Connect the mobile app
In the LogIt mobile app, go to Settings → Connect account and enter your server's address (e.g. http://192.168.1.10:8080 on your local network, or your server's public URL/domain if it's reachable from the
internet). Create an account there — it lives only on your server, nothing is sent
anywhere else.
5. Use the web dashboard
Open http://<your-server>:3000, log in
with the same account, and you'll see the same richer analytics view described on the home page — activity heatmap,
personal records, and a per-exercise deep dive.
Updating
git pull
docker compose up -d --build If a release changes the database schema, migrations run automatically on startup — no manual step needed. Back up your Docker volume before major version jumps regardless, the same way you'd back up any database you care about.
Need more control?
The docker-compose.yml at the repo root is the
whole self-host story — read it directly if you want to run the two services differently
(behind your own reverse proxy, on separate machines, with a different database, etc.).
Each service also has its own Dockerfile if
you'd rather build and run them without Compose at all.