A minimal self-hosted git browser on Rust axum: bare repos rendered as a website with commits, diffs, syntax-highlighted blobs, atom feeds, and clone over HTTPS.
axumdockergitgit-browsergitoxidegixrustself-hosted
1<?xml version="1.0" encoding="utf-8"?>
2<feed xmlns="http://www.w3.org/2005/Atom">
3 <title>{{ repo.name }}</title>
4 <subtitle>{{ repo.description }}</subtitle>
5 <link rel="self" href="{{ clone_base }}/{{ repo.name }}/atom.xml"/>
6 <link rel="alternate" type="text/html" href="{{ clone_base }}/{{ repo.name }}"/>
7 <id>{{ clone_base }}/{{ repo.name }}</id>
8 <updated>{{ now.rfc3339 }}</updated>
9 {% for c in commits %}
10 <entry>
11 <id>{{ clone_base }}/{{ repo.name }}/commit/{{ c.id }}</id>
12 <title>{{ c.summary }}</title>
13 <link rel="alternate" type="text/html" href="{{ clone_base }}/{{ repo.name }}/commit/{{ c.id }}"/>
14 <author>
15 <name>{{ c.author }}</name>
16 <email>{{ c.author_email }}</email>
17 </author>
18 <updated>{{ c.time|rfc3339 }}</updated>
19 <content type="text">{{ c.message }}</content>
20 </entry>
21 {% endfor %}
22</feed>