{"id":13961521,"url":"https://github.com/sandydoo/flux","last_synced_at":"2025-05-15T11:07:37.859Z","repository":{"id":39534454,"uuid":"425155415","full_name":"sandydoo/flux","owner":"sandydoo","description":"An open-source tribute to the macOS Drift screensaver","archived":false,"fork":false,"pushed_at":"2025-04-06T20:55:05.000Z","size":5927,"stargazers_count":795,"open_issues_count":5,"forks_count":40,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-04-14T19:58:32.426Z","etag":null,"topics":["drift","elm","elm-lang","fluid-simulation","macos","opengl","rust","rust-lang","screensaver","webgl"],"latest_commit_sha":null,"homepage":"https://flux.sandydoo.me/","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sandydoo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"ko_fi":"sandydoo","custom":["https://paypal.me/sandydoooo"]}},"created_at":"2021-11-06T04:29:43.000Z","updated_at":"2025-04-11T01:31:47.000Z","dependencies_parsed_at":"2024-01-02T02:38:48.721Z","dependency_job_id":"9778bd4d-cd8a-43d5-898e-772cd5a21467","html_url":"https://github.com/sandydoo/flux","commit_stats":{"total_commits":545,"total_committers":1,"mean_commits":545.0,"dds":0.0,"last_synced_commit":"613013cb91a69f8d038def4423cdd5596cff6f98"},"previous_names":[],"tags_count":33,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandydoo%2Fflux","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandydoo%2Fflux/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandydoo%2Fflux/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sandydoo%2Fflux/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sandydoo","download_url":"https://codeload.github.com/sandydoo/flux/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254328384,"owners_count":22052632,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["drift","elm","elm-lang","fluid-simulation","macos","opengl","rust","rust-lang","screensaver","webgl"],"created_at":"2024-08-08T17:01:13.017Z","updated_at":"2025-05-15T11:07:37.839Z","avatar_url":"https://github.com/sandydoo.png","language":"Rust","readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://flux.sandydoo.me/\"\u003e\n    \u003cimg width=\"100%\" src=\"https://assets.sandydoo.me/flux/social-header-2022-07-07.webp\" alt=\"Flux\" /\u003e\n  \u003c/a\u003e\n\n  \u003cp align=\"center\"\u003e\u003cb\u003eA open-source tribute to the macOS Drift screensaver.\u003c/b\u003e\u003c/p\u003e\n\n  \u003cp align=\"center\"\u003e\n    \u003ca href=\"https://sandydoo.gumroad.com/l/flux\"\u003eBuy\u0026nbsp;a\u0026nbsp;screensaver\u003c/a\u003e\n    \u0026nbsp;·\u0026nbsp;\n    \u003ca href=\"https://flux.sandydoo.me/\"\u003eLaunch\u0026nbsp;in\u0026nbsp;browser\u003c/a\u003e\n    \u0026nbsp;·\u0026nbsp;\n    \u003ca href=\"https://www.youtube.com/watch?v=dURktAeZDa8\"\u003eWatch\u0026nbsp;recording\u003c/a\u003e\n    \u0026nbsp;·\u0026nbsp;\n    \u003ca href=\"https://x.com/sandydoo/\"\u003eFollow\u0026nbsp;me\u0026nbsp;on\u0026nbsp;X\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/p\u003e\n\n\u003cbr\u003e\n\n\n## Screensavers\n\n#### [Buy Flux as a Windows screensaver →][store]\nHelp support development by letting your PC idle with style.\n\n## Backstory\n\nI’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 🙌.\n\nThis 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.\n\n## Reviews\n\n\u003e “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!”\n\u003e — anonymous Apple employee\n\n## Samples\n\n![A render of Flux in all 4 default color schemes](https://assets.sandydoo.me/flux/samples/flux-all-at-1280-800-logical.webp)\n\n![A render of Flux in the “Original” color scheme](https://assets.sandydoo.me/flux/samples/flux-original-at-1280-800-logical.webp)\n\n![A render of Flux in the “Plasma” color scheme](https://assets.sandydoo.me/flux/samples/flux-plasma-at-1280-800-logical.webp)\n\n![A render of Flux in the “Poolside” color scheme](https://assets.sandydoo.me/flux/samples/flux-poolside-at-1280-800-logical.webp)\n\n![A render of Flux in the “Freedom” color scheme](https://assets.sandydoo.me/flux/samples/flux-freedom-at-1280-800-logical.webp)\n\n## Build\n\n### Using Nix\n\nBuild a new release in the `result` folder:\n\n```sh\nnix build\n```\n\nOr open a development shell with all the neccessary tools:\n\n```sh\nnix develop\n\ncd web\npnpm serve\n```\n\n### Manual build\n\nThere’s a few things you’re going to have to install.\n\n- rustc with `wasm32-unknown-unknown` as a target\n- cargo\n- wasm-pack\n- node\n- pnpm\n- elm\n\nHow you get these dependencies depends on the operating system you’re running. Here’s an example for macOS and Linux using rustup:\n\n```sh\nrustup toolchain install stable\nrustup target wasm32-unknown-unknown\n\ncd web\npnpm install\n```\n\nRun a development server from the `web` folder:\n```sh\npnpm serve\n```\n\nBuild a release:\n```sh\npnpm build\n```\n\n## License\n\n[MIT][license-url] © [Sander Melnikov][maintainer-url].\n\n\n[license-url]: https://github.com/sandydoo/flux/blob/main/LICENSE\n[maintainer-url]: https://github.com/sandydoo/\n[x]: https://x.com/sandydoo/\n[store]: https://sandydoo.gumroad.com/l/flux\n","funding_links":["https://ko-fi.com/sandydoo","https://paypal.me/sandydoooo"],"categories":["Rust"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsandydoo%2Fflux","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsandydoo%2Fflux","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsandydoo%2Fflux/lists"}