Music festival for developers. Stages are environments, bands are services, sound check is CI, mosh pit is load test, backstage is admin panel.
- JavaScript 100%
| node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709 | ||
| src | ||
| tests | ||
| package.json | ||
| README.md | ||
code-music-festival
Music festival for developers. Stages are environments, bands are services, sound check is CI, mosh pit is load test, backstage is admin panel.
Usage
const { Festival, GENRES, WEATHER } = require('./src/festival');
const fest = new Festival('DevFest 2026');
// Book bands (services)
fest.bookBand('The Async Await', GENRES.ELECTRONIC);
fest.bookBand('Null Pointer Exception', GENRES.METAL);
fest.bookBand('Pure Functions', GENRES.JAZZ);
// Sell tickets
fest.sellTicket('Alice', 'vip');
fest.sellTicket('Bob', 'general');
fest.sellTicket('Carol', 'press');
// Assign bands to stages
fest.assignBand('The Async Await', 'main');
fest.assignBand('Null Pointer Exception', 'side');
// Start show
fest.startPerformance('main', 'The Async Await');
fest.endPerformance('main');
console.log(fest.festivalView());
console.log(fest.report());
Stages
- Main Stage (Production) — 5000 capacity, sound 95%
- Side Stage (Staging) — 1500 capacity
- Acoustic Tent (Dev) — 300 capacity
- DJ Booth (CI/CD) — 800 capacity
- Underground (Shadow) — 100 capacity, secret features
Genres
- Metal (energy 95) — Heavy Compute
- Electronic (energy 85) — Async
- Punk (energy 90) — Quick Hack
- Jazz (energy 50) — Functional
- Hip Hop (energy 75) — API
- Classical (energy 30) — Legacy
- Folk (energy 35) — Documentation