A collection of classic Apple II games faithfully recreated for the modern web. Each game was reverse-engineered from original disk images and rebuilt using contemporary web technologies while preserving the authentic gameplay experience.
A web port of the classic 1982 Avalon Hill dungeon crawler. Explore a procedurally generated 200x200x50 dungeon, battle 20 different monster types, and master 36 spells across 6 levels.
Features:
- Faithful recreation of the original Applesoft BASIC game engine
- Procedural dungeon generation using the original hash algorithm
- Two rendering modes: ASCII (classic green terminal) and Modern UI
- Local save system with cloud save support
- All 10 special locations: Inn, Altar, Throne, Fountain, Cube, Teleporter, Pit, Elevator, Stairs, and Misty areas
Controls:
- Movement: WASD or Arrow keys
- Stairs:
</,(up) and>/.(down) - Cast spell:
C - Combat:
F(fight),C(cast),E(evade) - Toggle renderer:
Tab
Tech Stack: React 19, TypeScript, Vite 7, Zustand, Tailwind CSS 4
A pixel-perfect recreation of the classic Apple II arcade game. Defend your base from waves of helicopters dropping paratroopers and bombers dropping explosives.
Features:
- Three visual modes: Retro (scanlines), Clean, and Modern
- Authentic physics ported from 6502 assembly
- Web Audio API sound effects
- Original game timing and difficulty curve
Controls:
- Rotate gun:
D(left),F(right) - Fire: Any other key
- Visual mode:
1(Retro),2(Clean),3(Modern)
Tech Stack: React 19, TypeScript, Vite 7, Canvas API
A web recreation of the legendary Apple II BBS door game. Create a character, battle monsters, challenge other players, and climb the combat ladder.
Features:
- Full BBS experience with authentic terminal styling
- Character creation with classes and stats
- Combat system with weapons, armor, and spells
- Message boards and community features
- Gambling games: Blackjack, Slots, Roulette, Russian Roulette
- Player vs Player jousting
- Castle exploration and dungeon crawling
Tech Stack: Express 5, EJS, SQLite (better-sqlite3), Socket.IO
A web recreation of an Apple II BBS system, faithfully ported from AppleSoft BASIC. Full classic BBS experience with RPG elements, gangs, and casino games.
Features:
- Character creation with 8 classes and 200-point stat allocation
- 7-level dungeon with 49 rooms per level and 100 unique monsters
- Town Square: Weapon shop (55 weapons), armor shop (28 armors), magic shop (12 spells), healer, bank
- Casino: Blackjack, slots, craps, and high-low card games
- Gang system with up to 4 members per gang
- Message boards and private email system
- Voting booth for player popularity
- Screen themes: Native, Green Phosphor, Amber Phosphor, White Phosphor
- Baud rate simulation: 300 to unlimited (for authentic retro experience)
- Keyboard shortcuts for menu navigation
Tech Stack: Express 5, EJS, SQLite (better-sqlite3)
- Node.js 18 or higher
- npm
# Clone the repository
git clone https://github.com/yourusername/sixtyfiveohtwo.git
cd sixtyfiveohtwo
# Install dependencies (also builds sub-apps)
npm install
# Start the server (databases auto-initialize on first run)
npm startNote: Both Proving Grounds and TPro BBS databases auto-initialize on first startup. For manual reset:
cd provinggrounds && npm run db:init && cd .. # Reset Proving Grounds
cd tprobbs && node src/db/init.js && cd .. # Reset TPro BBSThe server runs at http://localhost:3000 by default.
# Start with hot reload
npm run dev
# Build all games manually
npm run build
# Build individual games
npm run build:telengard
npm run build:sabotageCopy .env.example to .env and configure:
PORT=3000 # Server port
NODE_ENV=development # Environment (development/production)
SESSION_SECRET=your-secret-key-here # Required in production
DATABASE_PATH=./provinggrounds/data/provinggrounds.db # Proving Grounds database
TPROBBS_DATABASE_PATH=./tprobbs/data/tprobbs.db # TPro BBS databasesixtyfiveohtwo/
├── server.js # Main Express server
├── package.json # Root package with build scripts
├── views/
│ └── index.ejs # Apple II style landing page
├── telengard/ # Telengard game
│ ├── src/
│ │ ├── engine/ # Game logic (dungeon, combat, spells)
│ │ ├── state/ # Zustand store
│ │ ├── renderers/ # ASCII and Modern UI
│ │ └── saves/ # Save system
│ └── diskimage/ # Original Apple II disk image
├── sabotage/
│ ├── sabotage-web/ # Web port
│ │ ├── src/
│ │ │ ├── engine/ # Game state, update loop, renderer
│ │ │ ├── constants/ # Values from 6502 disassembly
│ │ │ └── audio/ # Sound effects
│ └── Sabotage.dis65 # SourceGen disassembly project
├── provinggrounds/
│ ├── src/
│ │ ├── routes/ # Express route handlers
│ │ └── db/ # SQLite schema and seeds
│ ├── views/ # EJS templates
│ └── original-disks/ # Original Apple II disk images
└── tprobbs/ # TPro BBS (Lost Gonzo BBS)
├── src/
│ ├── routes/ # Express route handlers
│ ├── db/ # SQLite schema and seeds
│ └── middleware/ # Auth and user loading
├── views/ # EJS templates
├── docs/ # Documentation
└── tests/ # Playwright E2E tests
- Push to GitHub/GitLab
- Create new Railway project from the repository
- Set environment variables:
SESSION_SECRET(required)NODE_ENV=production
- Railway auto-detects Node.js and deploys
# Build for production
NODE_ENV=production npm install
# Start server
NODE_ENV=production node server.jsThe health check endpoint is available at /health.
| Route | Description |
|---|---|
/ |
Game selection menu |
/telengard/ |
Telengard dungeon crawler |
/sabotage/ |
Sabotage arcade game |
/provinggrounds/ |
Proving Grounds BBS |
/tprobbs/ |
TPro BBS (Lost Gonzo BBS) |
/health |
Health check endpoint |
The MOS Technology 6502 was an 8-bit microprocessor that powered the Apple II, Commodore 64, Atari 2600, and NES. Its low cost and elegant design made home computing accessible in the late 1970s and early 1980s.
- Telengard (1982) - Created by Daniel Lawrence, inspired by the mainframe game DND. One of the first commercial dungeon crawlers.
- Sabotage (1981) - A fast-paced arcade shooter that showcased the Apple II's hi-res graphics capabilities.
- The Proving Grounds - A classic BBS door game where players created characters and battled for supremacy on the combat ladder.
- TPro BBS - A classic Apple II BBS system recreation with RPG elements, gang warfare, casino games, and authentic terminal emulation including phosphor screen themes and baud rate simulation.
See CONTRIBUTING.md for guidelines on how to contribute to this project.
This project is for educational and preservation purposes. The original games are property of their respective copyright holders.
- Original game authors and publishers
- The Apple II preservation community
- 6502bench SourceGen for disassembly tools
- The retrocomputing community for keeping these classics alive
This project was developed with AI-assisted coding:
- Claude Code - Anthropic's AI coding assistant
- Obra Superpowers - AI workflow enhancement for Claude Code