Skip to main content

Mergenthaler

A blogging platform with its own markup language.


Installation

pip install git+https://github.com/jackr4bbit/mergenthaler

Features

Feature Status
Feed files parsing ✅
Author files parsing ✅
Post files parsing ✅
Elements: Images (both local and external), Links, Lists, Code blocks, Block quotes, and formatted text ✅
Text formats: Header, Italic, Underline, Bold, and Strikethrough ✅
Static site generator ✅
Server (automatically updates for new/edited posts/authors) ✅
Syntax checker ✅
Custom site themes 🛠️
Plugins 🛠️
RSS ⏳
Markdown to Mergenthaler Markup ⏳

Usage

Markup Syntax

Images

[#Alt text#][/relative/to/feed/root.png]
[#Alt text#][relative/to/this/post.png]
[#Alt text#][https://picsum.photos/200/300]

Links

[Link][https://example.com/]

Lists

- item /*one*/
- item /*two*/

Each item can use text formatting.

Code blocks

:::
Line one
Line two
:::

Block quotes

> Line 1
> Line 2

Text

Formats:

  • [*Header*]
  • /*Italic*/
  • __Underlined__
  • <*Bold*>
  • --Strikethrough--

Files

Feed

Feed name
Feed tagline/short description
Feed description
:Default author name or author-id
:Default author name or author-id

Author

Author name
(custom-id)
[/image.png]
#group
#group

Bio/description using Mergenthaler Markup.

A custom id is optional. If none is specified, the id will be the alphanumeric and hyphen characters in the author's name with spaces replaced with hyphens.
An image is optional and can be external, relative to the post, or relative to the feed (see the section on Markup images).
Groups are optional. All lines can be in any order except for the name. Mergenthaler Markup text formats (e.g. bold) may be used in the bio, but elements (images, links, lists, code blocks, block quotes, or images) may not.

Post

Post title
Subtitle/description
(custom-id)
[/image.png]
:Author name or author-id
:Author name or author-id
:Author name or author-id
DD/MM/YYYY
#tag
#tag

Content using Mergenthaler Markup.

A custom id is optional. If none is specified, the id will be the alphanumeric and hyphen characters in the post's name with spaces replaced with hyphens.
An image is optional and can be external, relative to the post, or relative to the feed (see the section on Markup images).
Authors are optional (if none are specified, it will use the default authors defined in the feed file) and can be the authors id or the author's name (which will throw an error if there are multiple authors with the same name). If an author's file isn't found, it will have their name on the post but they won't have a page of their own.
Tags are optional. All lines can be in any order except for the title and description.

CLI

Build

mg build Builds a static site from a Mergenthaler feed.
mg build -l LOCATION
mg build --location LOCATION
Path to the feed file or directory containing it to build from (default current working dir). mg build -o OUTPUT
mg build --output OUTPUT
Path to the output directory (default subdir "output" of current working dir).
mg build --nodelete
If present, Mergenthaler won't delete all existing files in the output directory.

Serve

mg serve
Serves a Mergenthaler feed that updates when you update the files
mg serve -l LOCATION
mg serve --location LOCATION
Path to the feed file or directory containing it to serve from (default current working dir).
mg serve -p PORT
mg serve --port PORT
Port to listen on (default 8080).
mg serve --host HOST
The IP address to bind the server to (default 0.0.0.0).

Test

mg test.
Tests a Mergenthaler feed's syntax.
mg test -l LOCATION
mg test --location LOCATION
Path to the feed file or directory containing it to test (default current working dir).

Release files for mergenthaler 1.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mergenthaler 1.0.4
File Size Uploaded
mergenthaler-1.0.4.tar.gz 30.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mergenthaler 1.0.4
File Interpreter ABI Platform
mergenthaler-1.0.4-py3-none-any.whl Python 3 none any Details

Total release size: 66.4 kB

Release files / mergenthaler-1.0.4.tar.gz

Download URL mergenthaler-1.0.4.tar.gz
Size 30.4 kB
Tags Source
SHA-256 checksum
How to use checksums
9178fc4d87a99bedb730ee09d6cf69c9a6bd65fa8cce97437f8730e131e19bf7
BLAKE2b-256 checksum
How to use checksums
3bb26384097e19c20b14c21c82f98655b16bd4e0a522ab386253bc41cab53562
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release files / mergenthaler-1.0.4-py3-none-any.whl

Download URL mergenthaler-1.0.4-py3-none-any.whl
Size 36.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5b4607493da0eacf931e09806382b9d35d84bf7d99ef04336d8badb4fa2004c3
BLAKE2b-256 checksum
How to use checksums
2c72ed728d4594725e39677f9676e54e5af16ba3395de0e640d6b297224c3f44
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.6

Release history Release notifications | RSS feed

1.4.1

2 release files

1.4.0

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.0

2 release files

1.1.1

2 release files

1.1.0

2 release files

This release

1.0.4 This release

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page