Skip to main content

A simple static website generator powered by Jinja2

Project description

Norite

Norite is a simple static website generator powered by Jinja2 as the templating engine.

Norite's main goal is to act as an easy to use rendering engine for people who like to design their own templates or want to have the option of building a custom structure for their websites. To achieve this goal norite exposes the entire content directory as a tree data-structure to the templates along with the rendered content, leaving it up to the template designer how to interpret and display this information.

Implemented Features:

  • Markdown to HTML render
  • Support for using toml or json files instead of markdown
  • Jinja2 based HTML templates
  • Support for embedding Jinja2 templates in markdown
  • Support for nested folders in website content
  • Support for custom templates for any subsection of the content folder
  • Co-located assets with content
  • Syntax highlighting
  • Sass compilation (via libsass or dart-sass)
  • Built-in development server with auto reload on file changes
  • Support for building custom RSS/Atom feeds and robots.txt using templates
  • Automatic sitemap.xml generation
  • Support for marking files/folders as drafts

Todo (Features I am working on or plan to implement):

  • Tests
  • Python based Plugins
  • Live reload in Javascript
  • Incremental builds
  • Link checker
  • More examples

Installation

Norite is in beta but the features listed above are fully functional. If you like what you see and want to give it a try, you can install using:

pip install norite

It will install the following additional packages: jinja2, markdown, toml, pygments and watchdog.

Alternatively, if you want to install it globally as a shell tool within an isolated python environment, install via pipx:

pipx install 'norite'

Documentation

Checkout the documentation for norite here: documentation

Inspiration

Norite is influenced by Zola's features and its way of organizing content, borrows a few concepts from Hugo, and takes inspiration from Pelican's and Mkdocs's internal implementations for a few things. I would happily recommend using any of these excellent SSGs!

License

MIT License: Copyright (c) 2022 - 2022 Arsh
License.txt

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

norite-0.2.2.tar.gz (12.3 kB view details)

Uploaded Source

Built Distribution

norite-0.2.2-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

Details for the file norite-0.2.2.tar.gz.

File metadata

  • Download URL: norite-0.2.2.tar.gz
  • Upload date:
  • Size: 12.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for norite-0.2.2.tar.gz
Algorithm Hash digest
SHA256 f99a0f241faa9a34279b4b13125bdd71a73fcad1ea367b4ceb21bd83f31999f0
MD5 565659e8226865f252dcf00d05f41ad8
BLAKE2b-256 f55faf7592c64077ad72d6fc5c20971101a875f60cdf809f38ffd1ea70715769

See more details on using hashes here.

File details

Details for the file norite-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: norite-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 14.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.10

File hashes

Hashes for norite-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a1df299ef444173fd33f0e828330364cb8d1a1595a239889aec07d139a46d710
MD5 4029396f39cb2f735c83c499b5d2910a
BLAKE2b-256 83c63ea7f30f0b24db8c2774a124d8f651fde66b5e46901b08cac821aed34a04

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page