- Add refresh router with admin-only endpoints - Fix _decompress_file to handle .psql files correctly - Fix duplicate imports in mtgjson_manager.py - Mount refresh router in main.py - Add download_mtgjson.py standalone script - Add SUPPORTED_FILE_TYPES.md documentation
38 lines
1.5 KiB
JSON
38 lines
1.5 KiB
JSON
# MTG Online Backend - Project State
|
|
|
|
## Project Overview
|
|
A Python FastAPI backend service for MTG Online (Magic: The Gathering) that integrates with MTGJSON data and provides APIs for deck management, game rooms, and card data.
|
|
|
|
## Current Status: Ready for Deployment
|
|
|
|
### Completed Steps
|
|
1. ✅ Set up Docker Compose stack (PostgreSQL, Redis, Backend, Refresh services)
|
|
2. ✅ Clean up corrupted MTGJSON data files
|
|
3. ✅ Downloaded fresh MTGJSON data from API
|
|
4. ✅ Simplified MTGJSON data management service
|
|
5. ✅ Updated database schema to support all JSON data
|
|
6. ✅ Fixed directory naming issues
|
|
7. ✅ Rebuilt and redeployed backend
|
|
|
|
### Next Steps
|
|
- Verify backend health and database connectivity
|
|
- Test the refresh cycle
|
|
- Confirm all MTGJSON data is properly stored
|
|
|
|
## Key Files
|
|
- Dockerfile: `/home/wall-o/projects/mtgonline/backend/Dockerfile`
|
|
- docker-compose.yml: `/home/wall-o/projects/mtgonline/docker-compose.yml`
|
|
- .env.local: `/home/wall-o/projects/mtgonline/.env.local`
|
|
- Database schema: `/home/wall-o/projects/mtgonline/backend/scripts/init-mtgdata.sql`
|
|
- Main application: `/home/wall-o/projects/mtgonline/backend/app/main.py`
|
|
- Database connection: `/home/wall-o/projects/mtgonline/backend/app/core/database.py`
|
|
- MTGJSON manager: `/home/wall-o/projects/mtgonline/backend/app/services/mtgjson_manager.py`
|
|
|
|
## Technical Details
|
|
- Python 3.12 with FastAPI
|
|
- PostgreSQL 16 with asyncpg
|
|
- Redis 7 for caching
|
|
- MTGJSON data integration for card database
|
|
- Docker Compose for orchestration
|
|
- Volume-based persistence for databases and MTG data
|