master
rw-r--r--
10 B
rw-r--r--
42 B
rw-r--r--
291 B
rw-r--r--
1.0 KB
rw-r--r--
2.7 KB
rw-r--r--
222 B
rw-r--r--
6.0 KB
rw-r--r--
1.9 KB
rw-r--r--
7.2 KB
rw-r--r--
2.4 KB
rw-r--r--
2.6 KB
rw-r--r--
4.6 KB
rw-r--r--
1.6 KB
rw-r--r--
762 B
rw-r--r--
452 B
rw-r--r--
3.4 KB
rw-r--r--
3.1 KB
rw-r--r--
1.8 KB
rw-r--r--
5.6 KB
rw-r--r--
10.1 KB
rw-r--r--
957 B
rw-r--r--
342 B
rw-r--r--
2.9 KB
rw-r--r--
925 B
rw-r--r--
2.7 KB
rw-r--r--
930 B
rw-r--r--
7.7 KB
rw-r--r--
2.6 KB

Gitmal

Gitmal

This repository is a fork of upstream.

[!WARNING] ** All commits after the fork are generated by LLM Coding Agent and have not been reviewed by humans. Use at your own risk.**

Gitmal is a static page generator for Git repositories. Gitmal generates static HTML pages with files, commits, code highlighting, and markdown rendering.

Installation

go install github.com/antonmedv/gitmal@latest
docker run --rm -v $(pwd):/repo antonmedv/gitmal /repo

Or download prebuilt binary from releases.

Usage

Run gitmal in the repository dir. Gitmal will generate pages in ./output directory.

gitmal .

Run gitmal with --help flag to get a list of available options.

gitmal --help

Generate static files for Git dumb HTTP protocol (enables git clone via HTTP):

gitmal --git .

Generate multiple repositories with a TOML config file:

gitmal --config repos.toml

Example repos.toml:

site_name = "My Git Host"

[[repos]]
name = "nix-config"
slug = "nix-config"
path = "/home/user/nix-config"
default_branch = "main"

[[repos]]
name = "dotfiles"
slug = "dotfiles"
path = "/home/user/dotfiles"
default_branch = "master"

Filter branches with a regular expression:

gitmal --branches '^(main|master)$' .

Screenshots

Gitmal Code Highlighting Gitmal File Tree
Gitmal Files Page

Examples

Here are a few examples of repos hosted on my website:

Gitmal on kubernetes repository works as well. Generation on my MacBook Air M2 with --minify and --gzip flags takes around 25 minutes, and the generated files weigh around 2 GB.

Themes

Gitmal supports different code highlighting themes. You can customize the theme with --theme flag.

gitmal --theme github-dark

Documentation

License

MIT