Cellular Biology Arcade Game & Progressive Web App
Overview
Cytoscape: Immune Defense is a fast-paced, browser-based arcade game inspired by the classic Asteroids. You pilot a T-cell through a microscopic battlefield, firing antibodies at waves of invading pathogens — viruses, bacteria, parasites, and fungi — each with unique behaviors, resistances, and variants that require different strategies to survive. JeremyAnderson.Tech
You can play Cytoscape: Immune Defense live in your browser or view the complete source code on GitHub. The project is open source and built as a fully installable Progressive Web App, so it can be added to Android, iOS, Windows, macOS, or Linux and played offline after the initial visit. CPT Nope
Gameplay
The core gameplay follows the classic Asteroids formula with a cellular biology twist. Waves of pathogens move across the screen, and destroyed enemies split into smaller threats until they are completely eliminated. Clearing a wave advances the player to the next level, where enemy count and speed continue to increase. JeremyAnderson.Tech
Different pathogen classes introduce their own mechanics:
- Viruses provide standard threats, with Swift variants moving at increased speed.
- Bacteria can appear as Armored variants with increased durability.
- Parasites track the player, with Stalker variants using more aggressive homing behavior.
- Fungi are larger, slower, and naturally resistant to incoming damage. GitHub
Destroyed pathogens can also drop power-ups including Rapid Fire, Shield, Damage Boost, and System Purge, giving the player temporary advantages during increasingly difficult waves. GitHub
Desktop players can use WASD or the arrow keys for movement and Space or F to fire, while mobile players get touch controls designed for phones and tablets. GitHub
Technical Architecture
Cytoscape is built with React 19, TypeScript, HTML5 Canvas, Vite 6, Tailwind CSS 4, Motion, Lucide React, Vitest, vite-plugin-pwa, Workbox, GitHub Actions, and GitHub Pages. GitHub
The rendering system uses HTML5 Canvas for the game’s vector-style visual aesthetic, while the core game engine is separated from the React interface. Physics, collision detection, screen wrapping, rendering, entity behavior, and score persistence are organized into dedicated engine modules rather than being embedded directly in UI components. JeremyAnderson.Tech
Core engine behavior is covered by automated Vitest tests, and GitHub Actions handles the CI/CD pipeline and automatically deploys updates to GitHub Pages when changes are pushed to the main branch. JeremyAnderson.Tech
Developers can explore the implementation directly in the Cytoscape: Immune Defense GitHub repository.
Progressive Web App
The game is designed as a fully installable PWA rather than simply a webpage.
After the first visit, the application can run completely offline. It includes service-worker caching, automatic version-based cache busting, and a user-facing update prompt when a new release is available. JeremyAnderson.Tech
Platform support includes:
- iOS with Add to Home Screen support
- Android with installable web-app manifest support
- Windows, macOS, and Linux installation through supported desktop browsers
- Offline gameplay after the initial load GitHub
You can launch and install the live PWA here.
Development and Project History
The project is actively structured like a production software project rather than a one-off demo.
You can follow:
Source Code
Play the Live Game
View the Changelog
View the Roadmap
The repository also includes documented development commands, automated testing, PWA asset generation, release procedures, and the separated engine architecture. GitHub
Tech Stack
React 19, TypeScript, HTML5 Canvas, Vite 6, Tailwind CSS 4, Motion, Lucide React, Vitest, vite-plugin-pwa, Workbox, Progressive Web App, GitHub Actions, GitHub Pages
