{"id":21659250,"url":"https://github.com/rustshop/flakebox","last_synced_at":"2025-04-05T22:06:25.167Z","repository":{"id":195718021,"uuid":"693497770","full_name":"rustshop/flakebox","owner":"rustshop","description":"Flakebox is to your Rust project dev environment, what NixOS is to your OS, or home-manager to your home directory.","archived":false,"fork":false,"pushed_at":"2025-02-25T17:08:03.000Z","size":758,"stargazers_count":111,"open_issues_count":9,"forks_count":9,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-29T21:04:56.963Z","etag":null,"topics":["development-environment","dx","nix","rust"],"latest_commit_sha":null,"homepage":"","language":"Nix","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rustshop.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2023-09-19T06:36:03.000Z","updated_at":"2025-03-28T04:04:21.000Z","dependencies_parsed_at":"2024-02-08T21:48:39.409Z","dependency_job_id":"4ec039e2-be34-4e73-adf1-aa57f972fdc6","html_url":"https://github.com/rustshop/flakebox","commit_stats":null,"previous_names":["rustshop/flakebox"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rustshop%2Fflakebox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rustshop%2Fflakebox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rustshop%2Fflakebox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rustshop%2Fflakebox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rustshop","download_url":"https://codeload.github.com/rustshop/flakebox/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247406087,"owners_count":20933803,"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":["development-environment","dx","nix","rust"],"created_at":"2024-11-25T09:30:43.841Z","updated_at":"2025-04-05T22:06:25.139Z","avatar_url":"https://github.com/rustshop.png","language":"Nix","readme":"\u003c!-- WARNING: THIS FILE IS AUTO-GENERATED. EDIT ./docs/README.md instead --\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/rustshop/flakebox/actions/workflows/flakebox-ci.yml\"\u003e\n      \u003cimg src=\"https://github.com/rustshop/flakebox/actions/workflows/flakebox-ci.yml/badge.svg\" alt=\"Github Actions CI Build Status\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://matrix.to/#/#flakebox:matrix.org\"\u003e\u003cimg alt=\"Chat on Matrix\" src=\"https://img.shields.io/matrix/flakebox:matrix.org.svg\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/rustshop/flakebox/discussions\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/commmunity-discussion-blue\" alt=\"Flakebox Github Discussions\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n# Rustshop Flakebox\n\n## Rust dev experience we can share and love.\n\nFlakebox is to your Rust project, what NixOS is to your OS, and\nhome-manager to your home directory. And more.\n\nFlakebox is based on experiences building and maintaining sophisticated\nand demanding Rust projects using Nix. It integrates wide range of\nideas, tools and techniques into a powerful yet easy to use toolkit.\n\nFlakebox is more about Rust than Nix, and is focused on onboarding\nRust developers that want to use Nix in their projects.\n\nNotable features include:\n\n* library for building complex and highly optimized Nix-based build pipelines;\n* efficient multi-stage incremental build caching;\n* cross-compilation support, including non-Rust dependencies;\n* dev shells with integrated best practices, tooling and cross-compilation;\n* CI workflow generation;\n* seamless updates.\n\nWith Flakebox you can start using Nix in your Rust project in minutes\nand share the experience and tools between all your projects.\n\nBuilt-in Nix Modules based configuration system allows the same level of\ncustomization and extensibility as NixOS itself.\n\nThe documentation and tools will teach you how to start and then evolve\nyour project to employ the power of Nix to handle complex build pipelines,\nCI requirements and testing setups.\n\nThe project is open for ideas and collaboration. Learn, customize, improve and share\nas a member of the DX-focused community and use seamless updates\nto stay up to date with the evolving ecosystem.\n\nRustshop is a vision of how working with Rust could and should be like.\nFlakebox will bring that vision into your projects.\n\n**Warning:** Rustshop Flakebox is currently very immature. Expect\nrough edges and some amount of churn before we figure out the\ncore pieces.\n\n## Try it out\n\nThe easiest way to see how it works in practice is\nchecking some projects that use it, e.g. ones listed in\n[*I'm using it!* community discussions](https://github.com/rustshop/flakebox/discussions/categories/i-m-using-it).\n\nIn particular, feel free to submit a fake PR to [htmx-sorta](https://github.com/rustshop/htmx-sorta). Clone it,\ninstall Nix via [DeterminateSystems nix-installer](https://github.com/DeterminateSystems/nix-installer) if you\ndon't have Nix yet, enter the dev shell with `nix develop`, make\nsome changes and submit a PR. It's OK, we don't mind, it's a demo app.\n\n## Join the Community\n\n[Our Github Discussions](https://github.com/rustshop/flakebox/discussions)\nis the best place to ask questions and participate in building Flakebox. Don't be shy.\n\nIf you're looking for more interactive conversation, join [Flakebox Matrix channel](https://matrix.to/#/#flakebox:matrix.org).\n\n# Flakebox Book ToC\n\nThe best way to view the Flakebox documentation is by running:\n\n```\nnix build github:rustshop/flakebox#docs \u0026\u0026 xdg-open result/index.html\n```\n\nIn projects already using Flakebox, the documentation can be accessed using `flakebox docs` command.\n\n# ToC\n\n[Introduction](./docs/README.md)\n\n- [Technical Introduction](./docs/technical-details.md) \n\n\n# Getting Started\n\n- [Tutorial: Flakebox in a New Project](./docs/building-new-project.md)\n- [Setting up Flakebox](./docs/getting-started.md)\n- [Flake template](./docs/flake-template.md)\n\n# Reference Manual\n\n- [Crane and `craneLib`](./docs/crane.md)\n- [`flakeboxLib` functions](./docs/flakeboxLib.md)\n- [Best practices](./docs/best-practices.md)\n- [Native toolchains](./docs/native-toolchains.md)\n- [Linux toolchains](./docs/linux-toolchains.md)\n- [Darwin (MacOS) toolchains](./docs/darwin-toolchains.md)\n- [Android toolchains](./docs/android-toolchains.md)\n- [iOS toolchains](./docs/ios-toolchains.md)\n- [Config Options](./docs/nixos-options.md)\n\n\u003c!-- WARNING: THIS FILE IS AUTO-GENERATED. EDIT ./docs/README.md instead --\u003e\n","funding_links":[],"categories":["Nix"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frustshop%2Fflakebox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frustshop%2Fflakebox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frustshop%2Fflakebox/lists"}