constellate 0.3.3

Constellation Portal is a Rust-based CLI that converts curated markdown collections (requirements, ADRs, audits, tasks) into a static, themeable knowledge portal.
# Description

The CLI to generate static view of project tracking tool using markdown files.

The tool should allow to build any static website from markdown, even simple blog,
but the main goal is to support OoTB managing project using markdown files divided by:

- Software requirements (businges requests)
- documentation derived from implemented software requirements
- track support requests
- tasks - derived from requiremets, or technical or support
- ADRs list
- audits
- any other inicjatives or any other kind of documents required by professional project management

The default theme, document types, folder layouts, document templates are configurable but comes with good defaults.
The default options can be overriden, extended or discarded at all, using configuration file.


## Technical requirements


- single binary - distributed as single cross compiled binary (best using github actions) to deliver and install quickly
- support themes (but have one built-in supporting all features and stands as base to extend themes) using well know template system
- support additional asses for theming (css/js/fonts)
- support extending every aspect/ hook/ process/navigation etc, using simple and quick dynamic language
- allows to define documents with templates to use from CLI, f.e. tool new <document type> <document name> . f.e., tool new adr 'switch templating system' should use defined template for `adr` document, create it on specific path (configurable but with defaults) from name and set document title as provided in cli
- configurable using single config file with well know and readable format allowing to create nested values, strings, booleans, and any other types

## Development

- this project should be also tracked using its proposed markdown documents, beeing an example and test project
- repository contains shell.nix to allow quick development start, and allows to run this project using `nix run github:....` - probably putting everything related with nix in a `nix` folder