What is flake-file?
Understand the problem it solves, who it’s for, and how it compares to a plain flake.nix.
Learn More
flake-file treats flake.nix as a generated artifact. You declare inputs and settings as Nix module options, then regenerate the file whenever those declarations change.
What is flake-file?
Understand the problem it solves, who it’s for, and how it compares to a plain flake.nix.
Learn More
How it Works
The module system, option schema, the write-flake app, and the outputs function.
Learn More
Quick Start
Bootstrap a new project with the dendritic template and generate your first flake.nix in minutes.
Learn More
Migration Guide
Step-by-step guide for adopting flake-file in an existing flake-parts project. Learn More
Bootstrapping
Generate a first flake.nix without any existing flake using a one-shot bootstrap command.
Learn More
flakeModules
All built-in flakeModules: default, dendritic, import-tree, npins, unflake, allfollow, nix-auto-follow, and flake-parts-builder.
Learn More
Templates
Ready-made project templates: default, dendritic, parts, npins, and unflake.
Learn More
Outputs Function
How flake-file.outputs works and why you should keep it as the default one-liner.
Learn More
Hooks
Run commands after writing or during check with write-hooks and check-hooks.
Learn More
Lock Flattening
Automatically flatten flake.lock with allfollow or nix-auto-follow.
Learn More
flake-parts-builder
Incrementally add and remove flake-parts templates with flake-parts-builder integration. Learn More
All Options
Complete reference for every flake-file.* module option.
Learn More