Skip to content

Quickstart

Get Whatomate up and running in minutes using Docker or manual installation.

The fastest way to get started:

Terminal window
# Clone the repository
git clone https://github.com/shridarpatil/whatomate.git
cd whatomate
cp config.example.toml docker/config.toml
cp docker/.env.example docker/.env # Edit to set PostgreSQL credentials and timezone
# Start all services (PostgreSQL, Redis, Server)
make docker-up
# Access the application
open http://localhost:8080

Default login: admin@admin.com / admin

A community-maintained Helm chart is available at ankit373/whatomate-helm. Please note that this chart is not officially maintained by the Whatomate project; any issues related to the chart should be reported in its repository.

  • Go 1.25+ (the module targets go 1.25.0)
  • Node.js 20+ — only needed to build the frontend. CI builds it on Node 20; Vite 7 requires 20.19+ or 22.12+.
  • PostgreSQL — CI tests against 15/16, the Docker Compose file ships 17
  • Redis 7 (Redis 6+ works; username requires 6+ ACLs)
Terminal window
git clone https://github.com/shridarpatil/whatomate.git
cd whatomate
cp config.example.toml config.toml
Terminal window
# Create database
createdb whatomate
# Or using psql
psql -c "CREATE DATABASE whatomate;"
# Or with custom user
psql -c "CREATE USER whatomate WITH PASSWORD 'whatomate123';"
psql -c "CREATE DATABASE whatomate OWNER whatomate;"

Update config.toml with your database credentials:

[database]
host = "localhost"
port = 5432
user = "whatomate"
password = "whatomate123"
name = "whatomate"
Terminal window
brew install redis
brew services start redis
Terminal window
# Install Go dependencies
go mod download
# Run migrations and start server
make run-migrate

Open a new terminal:

Terminal window
cd frontend
npm install
npm run dev
Service URL
Frontend http://localhost:3000
API http://localhost:8080

Login: admin@admin.com / admin

For production, build a single binary with embedded frontend:

Terminal window
make build-prod
./whatomate server -migrate

This creates a self-contained binary—no separate frontend server needed. Access at http://localhost:8080.

Template to start with a production ready instance!

Deploy on Railway

Issue Solution
connection refused (database) Ensure PostgreSQL is running: pg_isready
connection refused (redis) Ensure Redis is running: redis-cli ping
database does not exist Create it: createdb whatomate
permission denied Check database user/password in config.toml
port already in use Change port in config.toml or stop conflicting service
Frontend can’t reach API Ensure backend is running on port 8080

To connect your WhatsApp Business account:

  1. Create a Meta Business account at business.facebook.com
  2. Set up a WhatsApp Business API account
  3. Generate an access token and note your Phone Number ID
  4. Add these credentials in Whatomate’s Settings → Accounts