dorkhub

flux

An open-source tribute to the macOS Drift screensaver

sandydoo
Rust86249 forksMITupdated 2 weeks ago
visit the demogit clone https://github.com/sandydoo/flux.gitsandydoo/flux

Flux

A open-source tribute to the macOS Drift screensaver.

Buy a screensaver  ·  Launch in browser  ·  Watch recording  ·  Follow me on X


Screensavers

Buy Flux as a Windows screensaver →

Help support development by letting your PC idle with style.

Backstory

I’ve been enamoured with the Drift screensaver ever since it came out with macOS Catalina. It’s mesmerizing. I feel like it’s become an instant classic, and, dare I say, it might stand to dethrone the venerable Flurry screensaver. Hats off to the folk at Apple responsible for this gem 🙌.

This is an attempt at capturing that magic and bottling it up in a more portable vessel. This isn’t a port though; the source code for the original is locked up in a spaceship somewhere in Cupertino. Instead, consider this a delicate blend of detective work and artistic liberty.

Reviews

“You’re the first person I’ve seen take this much of an interest in how we made Drift and it looks like you nailed it… minus maybe one or two little elements that give it some extra magic 😉 Great work!” — anonymous Apple employee

Samples

A render of Flux in all 4 default color schemes

A render of Flux in the “Original” color scheme

A render of Flux in the “Plasma” color scheme

A render of Flux in the “Poolside” color scheme

A render of Flux in the “Freedom” color scheme

Build

Using Nix

Build a new release in the result folder:

nix build

Or open a development shell with all the neccessary tools:

nix develop

cd web
pnpm serve

Manual build

There’s a few things you’re going to have to install.

  • rustc with wasm32-unknown-unknown as a target
  • cargo
  • wasm-pack
  • node
  • pnpm
  • elm

How you get these dependencies depends on the operating system you’re running. Here’s an example for macOS and Linux using rustup:

rustup toolchain install stable
rustup target wasm32-unknown-unknown

cd web
pnpm install

Run a development server from the web folder:

pnpm serve

Build a release:

pnpm build

License

MIT © Sander Melnikov.

more like this

agentlytics

Comprehensive analytics dashboard for AI coding agents — Cursor, Windsurf, Claude Code, VS Code Copilot, Zed, Antigravi…

JavaScript555
@f

anne-key

Firmware for Anne Pro Keyboard written in Rust

Rust572

TachiSnap

TachiSnap — Pixel Snapper for animation pixel artists. Rust + WebAssembly client-side tool for cleaning up AI-generated…

HTML50

r2

Free open-source Cloudflare R2 desktop client and S3 GUI for macOS, Windows, and Linux. Manage Cloudflare R2, AWS S3, M…

TypeScript50

search

search projects, people, and tags