Compare commits
2 Commits
main
...
postgres-m
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
452f8f2cd5 | ||
|
|
122bacf85d |
1
.gitignore
vendored
1
.gitignore
vendored
@ -62,7 +62,6 @@ docker-compose.*.yml
|
|||||||
*.db
|
*.db
|
||||||
venv
|
venv
|
||||||
.claude/
|
.claude/
|
||||||
CLAUDE.md
|
|
||||||
|
|
||||||
# Environment variables (NEVER commit these!)
|
# Environment variables (NEVER commit these!)
|
||||||
.env
|
.env
|
||||||
|
|||||||
42
CLAUDE.md
Normal file
42
CLAUDE.md
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
# Paper Dynasty Database API
|
||||||
|
|
||||||
|
FastAPI backend for baseball card game data. Peewee ORM with SQLite (WAL mode).
|
||||||
|
|
||||||
|
## Commands
|
||||||
|
|
||||||
|
```bash
|
||||||
|
uvicorn app.main:app --reload --host 0.0.0.0 --port 8000 # Dev server
|
||||||
|
python main.py # Alt start
|
||||||
|
python db_migrations.py # Run migrations
|
||||||
|
docker build -t paper-dynasty-db . # Build image
|
||||||
|
```
|
||||||
|
|
||||||
|
## Architecture
|
||||||
|
|
||||||
|
- **Routers**: Domain-based in `app/routers_v2/` (cards, players, teams, packs, stats, gauntlets, scouting)
|
||||||
|
- **ORM**: Peewee with SQLite (`storage/pd_master.db`, WAL journaling)
|
||||||
|
- **Card images**: Playwright/Chromium renders HTML templates → screenshots (see `routers_v2/players.py`)
|
||||||
|
- **Logging**: Rotating files in `logs/database/{date}.log`
|
||||||
|
|
||||||
|
## Key Constants
|
||||||
|
|
||||||
|
- `LIVE_CARDSET_ID`: 24 (current active cardset, in `db_engine.py`)
|
||||||
|
- `ranked_cardsets`: Legal cardsets for ranked play
|
||||||
|
- `CARDSETS`: Configuration for game modes and card availability
|
||||||
|
|
||||||
|
## Environments
|
||||||
|
|
||||||
|
| Env | URL | SSH | Container | Port |
|
||||||
|
|-----|-----|-----|-----------|------|
|
||||||
|
| **Prod** | pd.manticorum.com | `akamai` | `pd_api` | 815 |
|
||||||
|
| **Dev** | pddev.manticorum.com | `pd-database` | `dev_pd_database` | 816 |
|
||||||
|
|
||||||
|
**Prod compose path**: `ssh akamai` → `/root/container-data/paper-dynasty`
|
||||||
|
**Dev PostgreSQL**: `sba_postgres` on `10.10.0.42:5432`, user `sba_admin`, db `paperdynasty_dev`
|
||||||
|
|
||||||
|
## Important
|
||||||
|
|
||||||
|
- Docker image installs only Playwright Chromium (not all browsers) to optimize size
|
||||||
|
- Teams have dynamic card pricing based on market activity
|
||||||
|
- Supports both human players and AI teams
|
||||||
|
- Gauntlet events use special reward structures and card pools
|
||||||
Loading…
Reference in New Issue
Block a user