generated from nhcarrigan/template
2.1 KiB
2.1 KiB
Elysium Project Notes
CI Requirements
Never commit without first confirming the full pipeline passes locally:
pnpm lint— zero errors, zero warningspnpm build— all packages build cleanlypnpm test— all tests pass with 100% coverage onapps/apiandpackages/types
Art Assets
Game art is generated via the Gemini API (gemini-3-pro-image-preview, ~$0.134/image at 1K resolution) and hosted on the CDN at https://cdn.nhcarrigan.com/elysium/.
Process
- Generate images with
curltohttps://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-image-preview:generateContent?key=<API_KEY>, requesting soft-shaded anime style - Save responses to
/home/naomi/code/naomi/elysium/img/<category>/<id>.jpg - Upload to R2 with the AWS CLI — credentials are in the global
~/.claude/CLAUDE.md(never commit them here) - Delete the local
img/directory before committing (images live on CDN only)
CDN URL Helper
apps/web/src/utils/cdn.ts exports cdnImage(folder, id) → https://cdn.nhcarrigan.com/elysium/<folder>/<id>.jpg
Directory → Category Mapping
| Game entity | CDN folder |
|---|---|
| Zones | zones |
| Bosses | bosses |
| Quests | quests |
| Adventurers | adventurers |
| Companions | companions |
| Equipment | equipment |
| Upgrades | upgrades |
| Prestige upgrades | prestige-upgrades |
| Transcendence upgrades | transcendence-upgrades |
| Achievements | achievements |
| Explorations | explorations |
| Materials | materials |
| Recipes | recipes |
| Story chapter banners | story-chapters |
API Rate Limits
- 250 images/day per API key — use a second key if quota is hit
- Free-tier keys cannot use
gemini-3-pro-image-preview; key must be on a billing-linked project
About Page
The About page (apps/web/src/components/game/aboutPanel.tsx) contains a How to Play guide that should be kept up to date as new features are added to the game. When implementing new game systems, zones, mechanics, or significant UI features, update the HOW_TO_PLAY array in aboutPanel.tsx to include a description of the new feature.