Aquarium for developers. Fish are microservices, tanks are environments, algae is tech debt, cleaner fish are refactors.
- JavaScript 100%
| node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709 | ||
| src | ||
| tests | ||
| package.json | ||
| README.md | ||
code-aquarium
Aquarium for developers. Fish are microservices, tanks are environments, algae is tech debt, cleaner fish are refactors.
Usage
const { Aquarium, FISH_SPECIES } = require('./src/aquarium');
const aq = new Aquarium('DevAquarium');
// Add fish to tanks
aq.addFish('dev', 'auth-svc', FISH_SPECIES.GUPPY);
aq.addFish('staging', 'payment-api', FISH_SPECIES.ANGELFISH);
aq.addFish('prod', 'critical-path', FISH_SPECIES.SHARK);
aq.addFish('prod', 'refactor-bot', FISH_SPECIES.PLECOSTOMUS);
aq.addFish('prod', 'legacy-cron', FISH_SPECIES.WHITE_DWARF);
// Feed (deploy)
aq.feed('dev', 2);
aq.feedAll();
// Time passes
for (let i = 0; i < 5; i++) aq.tick();
// Clean up tech debt
aq.cleanTank('prod');
console.log(aq.display());
console.log(aq.report());
Fish Species
- Guppy (small, hardy 80%) — Fast reproducing microservice
- Neon Tetra (small, 70%) — Schools together, load-balanced
- Angelfish (medium, 50%) — Beautiful but territorial API
- Plecostomus (large, 95%) — Algae eater, automated refactor bot
- Red-Tail Shark (large, 75%) — Critical path, aggressive
- Corydora (small, 85%) — Bottom feeder, log collector
- Discus (medium, 30%) — Extremely sensitive canary service
- Betta (small, 60%) — Must be alone, singleton service
Components
- Fish — 8 species with hardiness, diet, breeding, health/hunger/stress
- WaterQuality — Temperature (CPU), pH, oxygen (memory), ammonia (errors), nitrate (tech debt)
- Tank — 4 types (dev, staging, prod, quarantine), capacity, filter, algae, ASCII view
- Aquarium — Multi-tank management, feeding, cleaning, daily cycle