Skip to content

The simplest and fastest static website generator in the world!!

License

Notifications You must be signed in to change notification settings

renatoathaydes/magnanimous

Repository files navigation

Magnanimous

Magnanimous mascot

https://renatoathaydes.github.io/magnanimous

The simplest and nicest static website generator in the world!!

Magnanimous has the following guiding principles:

  • no configuration.
  • no magic.
  • explicit is better than implicit.
  • generate static websites well, nothing else.

Features

  • simple templating mechanism based on a tiny expression language (simple as 2 + 2 is {{ eval 2 + 2 }}).
  • include a file into another ({{ include other-file.html }}).
  • define variables ({{ define title "Hello world" }}).
  • components and slots inspired by web components.
  • conditional content ({{ if title == "Home" }}We are home{{ end }}).
  • for loops over files and variables ({{ for file /path/to/files }}* Post name: {{eval file.postName}} {{end}}).
  • markdown content automatically converted to HTML.
  • source code highlighting in markdown.

Documentation

Visit the website for the full documentation.

Basic Design

Magnanimous reads source files from the source/ directory, and generates a website in target/.

The following source sub-directories are the only ones treated specially by Magnanimous:

  • source/static - static files that should be served as-is.
  • source/processed - files that will be processed with Magnanimous instructions.

Any other files and sub-directories are ignored by default, but may be referred to from processed files.

Magnanimous instructions allow the inclusion of files within templates, the use of variables and slots to customize inclusions and components, the addition of conditional and repeated content, and much more!

Check the Documentation for more information.