Design Philosophy: Why Zero Dependencies Matters
When we started building VOID SURVIVORS, we made a deliberate choice: zero dependencies. No npm packages. No build tools. No frameworks. Just vanilla HTML, CSS, and JavaScript running in the browser.
This decision might seem strange in an era where even simple projects often ship with hundreds of dependencies. But for us, it was essential to the vision of the game.
The Problem with Dependencies
Modern web development has normalized the idea that you need a framework to build anything. But frameworks come with costs:
- Maintenance burden: Every dependency is a potential security issue, compatibility problem, or source of breakage.
- Load time: Even optimized frameworks add to initial load time. For a game that promises instant play, every millisecond counts.
- Abstraction overhead: Frameworks abstract away the underlying platform. When something breaks, you have to understand both the framework and the platform to fix it.
- Fragility: A dependency update can break your project months later. With zero dependencies, the code you wrote today will work a decade from now.
What We Gained
Going dependency-free gave us several concrete advantages:
- Instant loading: The game is playable as soon as the three files download. No framework initialization, no bundle parsing, no deferred execution.
- Total control: Every pixel on the screen is drawn by code we wrote. Every sound is synthesized by our algorithms. There are no black boxes.
- Minimal attack surface: With zero external code, there are zero third-party vulnerabilities to worry about.
- Educational value: Building everything from scratch taught us more about browser APIs than any framework ever could.
- Future-proofing: The game will work in browsers a decade from now, as long as they support Canvas 2D and Web Audio.
The Visual Style
We also made a conscious decision about aesthetics. Without a design tool or art pipeline, we leaned into what code could do natively: glow effects, grid overlays, particle systems, and gradient backgrounds. The result is a dark neon-industrial theme that looks intentional rather than minimal.
The visual style is built entirely with CSS (gradients, backdrop-filter, box-shadow) and Canvas drawing operations. There are no image assets, no sprite sheets, no external fonts beyond a Google Fonts import.
Sound Without Files
Perhaps the most surprising technical achievement is the audio system. VOID SURVIVORS has no audio files. Every sound — menu clicks, weapon fire, enemy explosions, level-up chimes, game-over drones — is synthesized in real time using the Web Audio API.
We generate sounds by combining oscillators (sine, square, sawtooth) with envelopes, filters, and gain modulation. This approach has the side benefit of making the game extremely lightweight (no MB of audio assets to download) and gives us complete control over the sound profile.
Why This Matters for Players
For players, the zero-dependency philosophy translates into a game that just works. You do not need to install anything, update anything, or configure anything. You open a URL and you are playing. In a world where games increasingly require launchers, accounts, and updates, there is something refreshing about a game that is... just there.
This is the philosophy we will carry forward as we continue developing VOID SURVIVORS. New features will be built with the same mindset: keep it simple, keep it fast, keep it independent.