Sprout Track
v1.2.3 😁 - A self-hosted Next.js application for tracking baby activities, milestones, and development.
Live Demo
Try out Sprout Track at our live demo: https://www.sprout-track.com/demo
The demo environment is refreshed every 1 hour.
- ID:
01 - PIN:
111111
Quick Start: Docker (SQLite)
docker run -d \
--name sprout-track \
--restart unless-stopped \
-p 3000:3000 \
-v sprout-track-db:/db \
-v sprout-track-env:/app/env \
-v sprout-track-files:/app/Files \
sprouttrack/sprout-track:latest
Quick Start: Docker (PostgreSQL)
Requires an existing PostgreSQL 14+ server. Create the sprout_track and sprout_track_logs databases, then run:
docker run -d \
--name sprout-track \
--restart unless-stopped \
-p 3000:3000 \
-e DATABASE_PROVIDER=postgresql \
-e DATABASE_URL="postgresql://user:password@your-host:5432/sprout_track" \
-e LOG_DATABASE_URL="postgresql://user:password@your-host:5432/sprout_track_logs" \
-v sprout-track-env:/app/env \
-v sprout-track-files:/app/Files \
sprouttrack/sprout-track:latest
Open http://localhost:3000 in your browser.
- Default PIN:
111222 - Default /family-manager admin password:
admin
The Setup Wizard will guide you through initial configuration on first access.
See Docker Deployment for docker-compose setup, volumes, custom ports, and container details.
Quick Start: Local (SQLite)
Requires Node.js 22+, npm 10+, Git, and Bash.
git clone https://github.com/Oak-and-Sprout/sprout-track.git
cd sprout-track
chmod +x scripts/*.sh
./scripts/setup.sh
npm run start
Open http://localhost:3000 in your browser.
PostgreSQL is also supported for local deployments. See Local Deployment for PostgreSQL setup, manual setup, available scripts, and service management.
First-Time Setup
On first access, the Setup Wizard walks you through:
- Family Setup -- family name, URL slug, optional data import
- Security Setup -- system-wide PIN or individual caretaker PINs
- Baby Setup -- name, birth date, feed/diaper warning thresholds
The Family Manager at /family-manager (default password: admin) provides admin controls for domain settings, HTTPS, email, database backups, and push notifications.
See Initial Setup for details.
Documentation
| Guide | Description |
|---|---|
| Docker Deployment | Volumes, ports, container startup, building locally |
| Local Deployment | Manual setup, scripts reference, systemd service |
| Initial Setup | Setup Wizard, default credentials, Family Manager |
| Environment Variables | Full variable reference, auto-generation, security notes |
| Upgrades and Backups | Upgrade procedures, backup/restore for Docker and local |
| Push Notifications | VAPID keys, cron setup, per-user configuration |
| Webhook API | External integrations (Home Assistant, Grafana, NFC, etc.) |
| API Logging | Optional request/response logging |
| Admin Password Reset | Automatic reset when upgrading from older versions |
Tech Stack
- Next.js with App Router
- TypeScript
- Prisma with SQLite or PostgreSQL
- TailwindCSS
- Docker
- PWA with Push Notifications, Keep Awake, and Full Screen (on supported devices)