A modern web application for tracking your cat's weight over time with beautiful charts and user management.
- 🔐 User Authentication - Secure login/register system
- 👤 Profile Management - Update user information and preferences
- 🐱 Cat Management - Add, edit, and manage multiple cats
- 📊 Weight Tracking - Visual charts showing weight trends over time
- 📱 Responsive Design - Works seamlessly on desktop and mobile
- 🌍 Internationalization - Multi-language support
- Docker and Docker Compose
- Node.js 22+ and npm (for local development)
- Python 3.11+ (for local development)
# Development mode
docker-compose -f docker-compose.dev.yml up
# Production mode
docker-compose up# Backend
cd backend
pip install -r requirements.txt
uvicorn app.main:app --reload --host 0.0.0.0 --port 4000
# Frontend
cd frontend
npm install
npm startThis project uses Task for streamlined development:
# Start application
task launch [ENV=dev|prod]
# Run all tests
task test
# Run all linting
task lint
# Comprehensive CI testing
task ci-test# Frontend
task frontend:test
task frontend:lint
task frontend:type-check
# Backend
task backend:test
task backend:lint
task backend:db:migrate
# Database
task db:backup
task db:restore BACKUP=./backups/filename.sqlDATABASE_URL- PostgreSQL connection stringSECRET_KEY- JWT token secret keyALGORITHM- JWT algorithm (default: HS256)ACCESS_TOKEN_EXPIRE_MINUTES- Token expiration timeREGISTRATION_ENABLED- Enable/disable user registration
Configured with project-specific prompts and rules in .amazonq/:
- Use
@cat-weight-tracker-assistantfor general help - Use
@backend-devfor backend development - Use
@frontend-devfor frontend development
Optimized instructions in .github/copilot-instructions.md for:
- Material 3 design patterns
- TypeScript best practices
- Testing patterns
- Code consistency
Comprehensive testing strategy with local and CI alignment:
# High-confidence local testing
task ci-test
# Quick development testing
task test
task lintSee TESTING.md for detailed testing strategy.
├── backend/ # FastAPI Python backend
├── frontend/ # React TypeScript frontend
├── .amazonq/ # Amazon Q integration
├── .github/ # GitHub Actions & Copilot config
├── scripts/ # Development scripts
├── k8s/ # Kubernetes manifests
└── db/ # Database scripts
- JWT authentication with PyJWT and cryptography
- Password hashing with bcrypt
- SQL injection protection with SQLAlchemy
- CORS configuration for API security
- Regular dependency updates and vulnerability scanning
MIT License - see LICENSE file for details.
Built with ❤️ for cat lovers everywhere 🐾