_____ _ _ _ ____ _
| ____| | ___ ___| |_ _ __(_) ___ / ___|| |__ ___ ___ _ __
| _| | |/ _ \/ __| __| '__| |/ __| \___ \| '_ \ / _ \/ _ \ '_ \
| |___| | __/ (__| |_| | | | (__ ___) | | | | __/ __/ |_) |
|_____|_|\___|\___|\__|_| |_|\___| |____/|_| |_|\___|\___| __/
|_|
Electric Sheep is a legendary distributed computing screensaver created by Scott Draves in 1999. It harnesses the collective power of thousands of computers to evolve abstract fractal flame animations through genetic algorithms.
"Do Androids Dream of Electric Sheep?" - Philip K. Dick
This fork aims to restore full Electric Sheep functionality on modern macOS (Catalina 10.15+) by creating a companion app architecture that works around Apple's screensaver sandbox restrictions.
Since macOS Catalina (2019), Apple sandboxed third-party screensavers, breaking Electric Sheep's core features:
- No sheep downloading
- No voting
- No distributed rendering
- No auto-updates
A Companion App that runs outside the sandbox:
┌─────────────────────────┐ ┌─────────────────────────┐
│ Electric Sheep │ │ Electric Sheep │
│ Companion App │────▶│ Screensaver │
│ (Full network access) │ │ (Display only) │
└─────────────────────────┘ └─────────────────────────┘
│
▼
~/Library/Application Support/ElectricSheep/
Phase 2: Companion App Complete - The menu bar companion app is working and downloading sheep!
- ✅ Menu bar app with sheep count badge
- ✅ Fetches sheep list from sheepserver.net
- ✅ Downloads sheep to local cache
- ✅ Configurable cache size (1-20 GB)
- 🔲 Screensaver integration (Phase 3)
See ROADMAP.md for full progress.
- MANIFESTO.md - Full project vision and technical plan
- ROADMAP.md - Milestones and progress tracking
- CONTRIBUTING.md - How to help
- plans/ - Detailed implementation phases
Requires macOS 12.0+ and Xcode.
# Clone and build
git clone https://github.com/tdimino/electricsheep.git
cd electricsheep/Companion/ElectricSheepCompanion
# Install XcodeGen if needed
brew install xcodegen
# Build and run
xcodegen generate
xcodebuild -scheme ElectricSheepCompanion -configuration Release build
open ~/Library/Developer/Xcode/DerivedData/ElectricSheepCompanion-*/Build/Products/Release/ElectricSheepCompanion.appThe app appears in your menu bar and starts downloading sheep automatically.
Coming in Phase 3 - For now, you can play downloaded sheep with:
open ~/Library/Application\ Support/ElectricSheep/sheep/free/*.aviWe need help! See CONTRIBUTING.md for how to get involved.
Priority areas:
- Swift development for companion app
- macOS screensaver expertise
- Testing on various macOS versions
- Original Electric Sheep by Scott Draves
- flam3 - Fractal flame renderer
- Aerial Screensaver - Reference implementation for companion app pattern
- Infinidream - Scott Draves' new project
- Scott Draves - Creator of Electric Sheep and the fractal flame algorithm
- Aerial Screensaver Team - For pioneering the companion app solution
- Electric Sheep Community - 25+ years of collaborative art
GPL v2 - See client_generic/COPYING
"When computers sleep, they dream of Electric Sheep."