The README's screenshots showed real games whose authors never agreed to be featured. scripts/demo/build-demo-data.mjs builds a Flashpoint install of invented games with generated art, plus Pixel Penguin Panic, a small HTML5 game written for it. scripts/demo/take-screenshots.mjs retakes the screenshots from an app running on it.
2.6 KiB
2.6 KiB
Development Documentation
This directory contains comprehensive documentation for developers working on the Dotcom Arcade application.
Contents
- Setup Guide - Complete development environment setup
- Commands Reference - All npm commands for monorepo and services
- Project Structure - Directory structure explained
- Coding Standards - TypeScript conventions and style guide
- Testing Guide - Testing approach and best practices
- Debugging Guide - Debugging tips and troubleshooting
- Common Pitfalls - Known issues and solutions
- Upstream Sync - Merging changes from flashpoint-web
- GitHub Mirror - Publishing to GitHub and GHCR
- Demo Data - Made-up games for development and screenshots
Quick Start
# Install dependencies for all services
npm run install:all
# Start all services in development mode
npm run dev
# Run type checking across all services
npm run typecheck
# Build all services for production
npm run build
Development Workflow
- Initial Setup: Follow the Setup Guide
- Learn Commands: Review Commands Reference
- Understand Structure: Read Project Structure
- Follow Standards: Apply Coding Standards
- Write Tests: Use Testing Guide
- Debug Issues: Reference Debugging Guide
- Avoid Pitfalls: Check Common Pitfalls
Architecture Overview
The project is a monorepo with two independent services:
- Backend (port 3100): REST API with Express + TypeScript (includes game service)
- Frontend (port 5173): React SPA with Vite + TypeScript
Each service can be developed, tested, and deployed independently. The game service is now integrated into the backend as the /game-proxy/* and /game-zip/* routes.
Getting Help
- Review existing documentation in this directory
- Check the main CLAUDE.md for project overview
- Consult service-specific docs in
docs/03-backendanddocs/04-frontend - Review architecture documentation in
docs/02-architecture
Contributing
When adding new features or fixing bugs:
- Follow the coding standards outlined in this documentation
- Write tests for new functionality
- Update relevant documentation
- Ensure all type checks pass (
npm run typecheck) - Verify no build errors (
npm run build)