Go to file
Timothy Kim f7d010f28d Use Docker for local development environment
- Update README and CLAUDE.md with Docker-based dev workflow
- Add Dockerfile for containerized deployment
- Add gunicorn to requirements.txt
- Dev uses volume mount for live code reloading

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 20:41:48 -05:00
2026-01-19 20:12:50 -05:00
2026-01-19 20:12:50 -05:00
2026-01-19 20:12:50 -05:00
2026-01-19 20:06:47 -05:00

Kebuu

A spending tracker web application built with Flask.

Setup

1. Create Environment Files

Copy the example file and configure for your environment:

cp .env.example .env.dev   # For development
cp .env.example .env.prod  # For production

Edit the files with your values:

Variable Description Example
SECRET_KEY Flask session secret (use a strong random string in production) your-secret-key-here
DATABASE_URL Database connection string sqlite:///kebuu.db or postgresql://user:pass@host/db
ALTCHA_HMAC_KEY CAPTCHA signing key (use a strong random string) your-altcha-hmac-key-here

Generate secure keys with:

python -c "import secrets; print(secrets.token_hex(32))"

2. Build Docker Image

docker build -t kebuu .

3. Run the Application

Development:

docker run -p 5000:5000 --env-file .env.dev -v $(pwd)/src:/app kebuu

The volume mount (-v) enables live code reloading during development.

Production:

docker run -p 5000:5000 --env-file .env.prod kebuu

Project Structure

See CLAUDE.md for detailed project documentation.

Description
Spending Tracker
Readme MIT 44 KiB
Languages
Python 58%
HTML 23.1%
CSS 14.5%
Dockerfile 4.4%