Documentation / Local development

Run Logister locally with realistic data.

Use this page for day-to-day development: booting the app, choosing a local infra strategy, loading sample data, and verifying Redis-backed features before touching production deploys.

Bootstrap

Start with the default local app setup.

shell
cp .env.sample .env
bundle install
bin/rails db:prepare
bin/dev

This gives you the Rails app and Tailwind watcher. Keep PostgreSQL available before running db:prepare. Redis is recommended locally because production uses it for cache and Sidekiq.

Boot paths

Choose the local startup path that matches your machine.

CommandBest forWhat it starts
bin/devNormal local app work when PostgreSQL and Redis are already available.Rails server and Tailwind watcher through Foreman.
bin/dev-infraLocal work when you want Docker to provide Redis and ClickHouse.Docker Redis, Docker ClickHouse, then bin/dev.
bin/dev-infra --with-postgresFull local stack in Docker.Docker PostgreSQL, Redis, ClickHouse, then bin/dev.

Background jobs

Run a worker when you want production-like background behavior.

The default local web process is enough for UI and most request work. If you are testing job behavior, Sidekiq queues, or ClickHouse event writes, run a worker in a second terminal:

shell
bundle exec sidekiq -C config/sidekiq.yml

Use SIDEKIQ_CONCURRENCY when you need to mimic a busier production worker.

Seed data

Load development-only sample data when you want a realistic inbox.

shell
bin/rails db:seed
  • Three confirmed users: alice, bob, and carol
  • Projects with shared memberships
  • Active and revoked API keys
  • Events across error, metric, transaction, log, and check_in
  • Error groups in multiple states
  • Check-in monitor examples for ok, missed, and error
Demo credentials
[email protected] / password123
[email protected] / password123
[email protected] / password123

Local services

Pick a PostgreSQL strategy, then add Docker services as needed.

The Docker Compose file can provide PostgreSQL 16, Redis 7, and ClickHouse 24.8. If you already use Postgres.app locally, keep PostgreSQL outside Docker and run only ClickHouse and Redis:

shell
docker compose up -d clickhouse redis
bin/rails db:prepare

If you want PostgreSQL in Docker too, use:

shell
docker compose --profile docker-db up -d
bin/rails db:prepare

Verify local boot

Confirm the local stack is actually usable.

Local verification
Landing page loads
You can sign in with a seeded account
Projects index renders sample projects
Redis-backed background features start without errors
A seeded event appears in a project inbox