Hugo-to-Gemini Markdown converter
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Timur Demin 30a5d407e2
Add Docker build files
преди 1 седмица
cmd Prevent rendering as posts преди 1 седмица
internal/gemini Fix rendering of links-only paragraphs преди 1 седмица
.drone.yml Add Docker build files преди 1 седмица
.gitignore Ignore test files from Git преди 3 седмици
.goreleaser.yml Release v0.1.0 преди 1 седмица
COPYING Add README and license code under GPLv3 преди 3 седмици
Dockerfile Add Docker build files преди 1 седмица Add CI config and link преди 1 седмица
go.mod Add YAML front matter parsing support преди 2 седмици
go.sum Add YAML front matter parsing support преди 2 седмици
render.go Implement gmnhg преди 1 седмица

Hugo-to-Gemini converter


This repo holds a converter of Hugo Markdown posts to text/gemini (also named Gemtext in this README). The converter is supposed to make people using Hugo‘s entrance to Project Gemini, the alternate web, somewhat simpler.

The renderer is somewhat hasty, and is NOT supposed to be able to convert the entirety of possible Markdown to Gemtext (as it’s not possible to do so, considering Gemtext is a lot simpler than Markdown), but instead a selected subset of it, enough for conveying your mind in Markdown.

The renderer uses the gomarkdown library for parsing Markdown. gomarkdown has a few quirks at this time, the most notable one being unable to parse links/images inside other links.


This program converts Hugo Markdown content files from content/ in accordance with templates found in gmnhg/ to the output dir. It also copies static files from static/ to the output dir.

For more details about the rendering process, see the doc attached to the program.

Usage of gmnhg:
  -output string
        output directory (will be created if missing) (default "output/")
  -working string
        working directory (defaults to current directory)


This program reads Markdown input from either text file (if -f filename is given), or stdin. The resulting Gemtext goes to stdout.

Usage of md2gmn:
  -f string
        input file

md2gmn is mainly made to facilitate testing the Gemtext renderer but can be used as a standalone program as well.


This program is redistributed under the terms and conditions of the GNU General Public License, more specifically version 3 of the License. For details, see COPYING.