The monolithic Norg static site generator built with Rust
GPL-2.0 License
The monolithic Norg static site generator built with Rust. Leverage the precision of rust-norg syntax validation with the power of our in-house Norg-to-HTML conversion library to create stunning static sites from your Norg content with an unparalleled performance.
Norgolith caters to both developers and content creators seeking a powerful and user-friendly solution for crafting static websites from Norg content. Here's what makes Norgolith stand out:
Component | Requirement |
---|---|
Build | Rust >= 1.77 |
Compile the project using the optimized
Cargo profile (recommended).
$ cargo build --profile optimized && ./target/optimized/norgolith --help
The monolithic Norg static site generator
Usage: norgolith <COMMAND>
Commands:
init Initialize a new Norgolith site
serve Build a site for development
new Create a new asset in the site (e.g. 'new -k content post1.norg' ->
'content/post1.norg') and open it using your preferred system editor
build Build a site for production
help Print this message or the help of the given subcommand(s)
Options:
-v, --version Print version
-h, --help Print help
Run cargo install --profile optimized --path .
to compile and install Norgolith in your ~/.cargo/bin
directory.
The Norgolith repository includes a Nix flake for development and testing purposes in the root directory. This section outlines how to use the Nix flake for these workflows.
# For extra verbosity add '--show-trace -Lv'
nix build .
This command builds Norgolith using Nix and places the executable in the result
directory.
# For extra verbosity add '--show-trace -Lv'
nix run .
This command builds Norgolith the same way the nix build
command would (including the result
directory symlink), and then proceeds to run the project.
# For extra verbosity add '--show-trace -Lv'
nix develop .
This command creates a development shell pre-configured with all the dependencies required to build and test Norgolith. Inside the development shell, you can directly work on the source code and test changes.
For a more convenient development experience, consider using
nix-direnv. With the nix-direnv
integration,
entering the project directory will automatically activate the development shell defined in the
flake.
Join the Neorg community and get help or discuss about the project:
Developing and maintaining open-source projects takes time and effort. If you find Norgolith valuable and would like to support its continued development, here are some ways you can help:
This project is licensed under the GNU General Public License v2 (GPLv2). You can find the license details in the LICENSE file.