A private, low-friction system to log daily activities and visualize time use, starting local-only and growing into a small multi-user web app.
This is a full-stack web application for tracking personal activities and time usage.
- Backend: Python 3.11, FastAPI, SQLAlchemy, Alembic, SQLite
- Frontend: React 18, Vite, TypeScript, React Query
- Development: Docker, Docker Compose
- Quality: Trunk (linting, formatting), pytest, React Testing Library
- CI/CD: GitHub Actions
backend/ - FastAPI backend application
frontend/ - React + Vite frontend application
specs/ - Feature specifications and planning
docs/ - Product and technical specifications
.github/ - GitHub Actions CI/CD workflows
- Docker Desktop installed and running
- Git installed
-
Clone the repository:
git clone <repository-url> cd PersonalActivityLogger
-
Start the development environment:
docker-compose up -d
Or use the tasks.json runner:
# After configuring tasks.json ./tasks.json run start -
Access the services:
- Frontend: http://localhost:3000
- Backend API: http://localhost:8000
- API Documentation: http://localhost:8000/docs
-
View logs:
docker-compose logs -f
-
Stop the services:
docker-compose down
The project uses tasks.json for common operations (coming soon).
This project is currently in infrastructure setup phase. The development environment, API scaffold, and frontend scaffold are being created.
For the MVP, all infrastructure runs locally via Docker:
- No cloud hosting
- No authentication
- SQLite database
- Single-user only
Future features will include:
- Cloud hosting deployment
- Authentication and multi-user support
- PostgreSQL migration
- External observability tools
- iPhone Shortcuts integration
- AI trend analysis
This is a personal project for learning and experimentation.
MIT