···34343535### [Batteries](https://den.oeiuwq.com/guides/batteries/)
36363737+### [Versioning](https://den.oeiuwq.com/releases/)
3838+3739### [Reference](https://den.oeiuwq.com/reference/ctx/)
38403941### [Tests as Code Examples](https://den.oeiuwq.com/tutorials/ci/)
···76787779[`quasigod.xyz`](https://tangled.org/quasigod.xyz/nixconfig): Beautiful organization, uses custom Den namespaces and Den angle brackets (+flake-parts)
78807979-[`Adda`](https://codeberg.org/Adda/nixos-config): A comprehensive system configuration for multiple hosts (+flake-parts +flake-file +home-manager +files)
8181+[`adda/nixos-config`](https://codeberg.org/Adda/nixos-config): Multiple hosts (+flake-parts +flake-file +home-manager +files)
80828183Growing community adoption: [Usage Search](https://github.com/search?q=den.aspects+language%3ANix&type=code) - [AI Instructions Search](https://github.com/search?q=%28den.aspects+OR+vic%2Fden%29++language%3AMarkdown+%28agent+OR+claude+OR+gemini+OR+readme%29&type=code)
8284···113115114116> Den is a playground for some very advanced concepts. I’m convinced that some of its ideas will play a role in future Nix areas. In my opinion there are some raw diamonds in Den.\
115117> — `@Doc-Steve` - Author of [Dendritic Design Guide](https://github.com/Doc-Steve/dendritic-design-with-flake-parts)
116116-117117-## Den Versioning - `v0.x` is moving fast
118118-119119-Den `main` always requires flake-aspects `main`. Same for `latest` versions.
120120-121121-```nix
122122-# Bleeding edge Den
123123-{
124124- inputs.den.url = "github:vic/den";
125125- inputs.flake-aspects.url = "github:vic/flake-aspects";
126126-}
127127-```
128128-129129-`main` branch follows development, this is where PRs are merged, it is stable in the sense
130130-that every PR checks CI. However, some PR might introduce changes that require you being
131131-aware of what is happening in Den. For people tracking development, we have announcements
132132-tagged `heads-up` whenever this happens.
133133-134134-```nix
135135-# Released Den - no longer gets updates until next release
136136-{
137137- inputs.den.url = "github:vic/den/latest";
138138- inputs.flake-aspects.url = "github:vic/flake-aspects/latest";
139139-}
140140-```
141141-142142-`latest` tag always follows the latest created tag. This is intended for people that wishes
143143-to wait for a release and reading all announcements at release notes. if you flake update, you
144144-will only move between release points.
145145-146146-> Diff of changes since latest release: [latest...main](https://github.com/vic/den/compare/latest...main)
147147-148148-For other than main and latest versions, each release-notes documents the particular
149149-flake-aspects version needed by Den. This is because flake-aspects can be used independently of Den,
150150-and it does not follows Den version numbers because it is not as fast-paced as Den.
151118152119## Code example (OS configuration domain)
153120
···11+---
22+title: Den Releases and Versioning
33+description: How Den is versioned and release notes
44+---
55+66+import { Aside } from '@astrojs/starlight/components';
77+88+<Aside icon="rocket" title="Den v0 series">
99+1010+Den is currently at `v0.x` series. That does not mean it is unstable,
1111+we have >180 tests in our CI and each new feature is always tested.
1212+1313+What `v0.x` means is that Den development is currently fast-paced,
1414+evolving and being shaped by its current users.
1515+1616+If you would like something to be
1717+possible with Den, _now_ is the time when all users help shape Den.
1818+Until it reaches a more definitive form.
1919+</Aside>
2020+2121+## Den Dependencies.
2222+2323+`den.lib` is built with [`flake-aspects`](https://github.com/vic/flake-aspects)
2424+and Den framework uses a [`import-tree`](https://github.com/vic/import-tree) to
2525+load its `modules/` directory. Of these two, only `flake-aspects` version is
2626+important because it provides the underlying aspects features Den uses.
2727+2828+Some people use `flake-aspects` independently of Den,
2929+and it does not follow Den versioning numbers
3030+because it is not as fast-paced as Den.
3131+3232+3333+## Bleeding-Edge Den
3434+3535+**The `main` branch of Den will always depend on flake-aspects `main` branch**.
3636+3737+This branch follows development, this is where PRs are merged, it is stable in the sense that every PR checks CI.
3838+3939+```nix
4040+# flake.nix
4141+# Main Den - updates on each PR merge
4242+{
4343+ inputs.den.url = "github:vic/den";
4444+ inputs.flake-aspects.url = "github:vic/flake-aspects";
4545+}
4646+```
4747+4848+<Aside type="caution" icon="rss" title="Heads-up Announcements">
4949+However, some PR might introduce changes that require you being aware of what is happening in Den. For people tracking `main` development, we have [announcements
5050+tagged `heads-up`](https://github.com/vic/den/discussions?discussions_q=label%3Aheads-up) whenever something important happens. These announcements are also forwarded to Zulip and Matrix channels.
5151+</Aside>
5252+5353+5454+## Latest Den
5555+5656+Den has a `latest` tag that always follows the latest created release tag.
5757+5858+> Diff of changes since latest release: [latest...main](https://github.com/vic/den/compare/latest...main)
5959+6060+**The `latest` version of Den will always depend on flake-aspects `latest`**.
6161+6262+This is intended for people that wishes to move only between release points.
6363+People still need to read `Release Notes` since they might contain important
6464+information on how Den is evolving.
6565+6666+6767+```nix
6868+# flake.nix
6969+# Latest Den - no longer gets updates until next release
7070+{
7171+ inputs.den.url = "github:vic/den/latest";
7272+ inputs.flake-aspects.url = "github:vic/flake-aspects/latest";
7373+}
7474+```
7575+7676+## Released Den
7777+7878+For other than `main` and `latest` versions, each `Release Notes` document
7979+detailsthe particular flake-aspects version needed by Den.
8080+8181+**Read [Den Releases](https://github.com/vic/den/releases)**
8282+