- Vite + React + TypeScript project structure - Core dependencies installed (Konva.js, Zod, js-yaml, Monaco Editor) - Tailwind CSS configuration - Complete source directory structure - Project documentation and README - MIT License - Development server configured and running
64 lines
No EOL
2.4 KiB
JSON
64 lines
No EOL
2.4 KiB
JSON
{
|
|
"project": {
|
|
"name": "bms-forge",
|
|
"description": "BattleMap Notation Schema (BMS) renderer for DnD/TTRPG maps",
|
|
"version": "0.1.0",
|
|
"repository": "https://git.bouncypixel.com/helm/bms-forge.git",
|
|
"deploymentUrl": "maps.bouncypixel.com"
|
|
},
|
|
"userPreferences": {
|
|
"codingStyle": {
|
|
"typescript": "strict-types-minimal-anys",
|
|
"react": "pragmatic-balance",
|
|
"stateManagement": "context-first-upgrade-if-needed",
|
|
"errorHandling": "graceful-degradation-with-optional-libs",
|
|
"testing": "critical-paths-first-then-expand"
|
|
},
|
|
"architecture": {
|
|
"componentStructure": "type-based-with-domain-subfolders",
|
|
"styling": "tailwind-hybrid-with-css-modules",
|
|
"buildTool": "vite",
|
|
"canvasLibrary": "konva",
|
|
"validation": "zod",
|
|
"yamlParsing": "js-yaml",
|
|
"editor": "monaco"
|
|
}
|
|
},
|
|
"projectContext": {
|
|
"phase": "implementation",
|
|
"currentFocus": "project-initialized",
|
|
"decisionsMade": [
|
|
"Frontend-only MVP with React + TypeScript",
|
|
"Use BMS 1.0 schema as defined in docs/",
|
|
"Paperly style as default free tier",
|
|
"Texture packs as future monetization",
|
|
"AI integration as subscription feature",
|
|
"Initial deployment to maps.bouncypixel.com"
|
|
],
|
|
"nextSteps": [
|
|
"Create BMS TypeScript interfaces",
|
|
"Implement YAML parser and validator",
|
|
"Build basic rendering engine",
|
|
"Create editor and preview components",
|
|
"Implement export functionality"
|
|
],
|
|
"keyFiles": [
|
|
"docs/PROJECT_PLAN.md",
|
|
"docs/BMS_SCHEMA_SPEC.md",
|
|
"docs/IMPLEMENTATION_ROADMAP.md",
|
|
"docs/TECHNICAL_ARCHITECTURE.md",
|
|
".opencode-config.json"
|
|
]
|
|
},
|
|
"sessionNotes": {
|
|
"lastUpdated": "2026-03-19",
|
|
"developerProfile": "Senior software engineer and manager of small dev team. Prefers pragmatic TypeScript with strict types but willing to use 'any' when needed. State management depends on complexity. Open to functional error handling libraries but aware of learning curve. Tests critical paths first, expands coverage after features stabilize.",
|
|
"projectGoals": [
|
|
"V1: Frontend-only BMS renderer with Paperly style",
|
|
"Free forever for basic functionality",
|
|
"Monetize via texture packs and AI subscriptions",
|
|
"Build community around BMS schema format",
|
|
"Potential future VTT integration"
|
|
]
|
|
}
|
|
} |