Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

vole
Clone

Read only, no credentials:

https://rodent.software/git/vole.git

Write over SSH with a registered key:

git clone ssh://git@0.0.0.0:2222/vole.git

A free and open-source forge that lives in your Git repo.

Turn the code tab into an editor-style file browser

a464f8927bfb3edcf170694f120dc9b3f68320da · Keenan Nemetz · 15d ago · parent f09ef39e

Turn the code tab into an editor-style file browser

- Add a persistent nested file tree with HTMX file and folder swaps, active
  rows, expanded ancestors, and deep-link support.
- Share one page header across every repository tab: title and summary on the
  left, tab actions grouped on the right.
- Make the repository name the first tab and show visibility with a lock or
  globe icon derived from the ACL.
- Open markdown as syntax-highlighted source by default, with an explicit
  full-width preview toggle.
- Point the branch breadcrumb at the Code overview instead of a second root
  directory listing.
- Move contributor-branch CI approval from the code browser to the Runs tab.
- Extend UI tests for the file tree, fragments, repo visibility, markdown
  source/preview, shared headers, and the moved CI control.

server/web/templates/overview.html +19−14

@@ -2,20 +2,25 @@
2 2 {{template "header" .}}
3 3 {{template "repohead" (nav .Name "overview")}}
4 4
5 <div class="repo-sub">
6 <a class="button" href="/r/{{.Name}}/code">{{icon "code"}}Browse code</a>
7 <details class="clone">
8 <summary>{{icon "copy"}}Clone</summary>
9 <div class="clone-pop">
10 <p class="muted">Read only, no credentials:</p>
11 <code>{{.CloneURL}}</code>
12 <p class="muted">Write over SSH with a registered key:</p>
13 <code>git clone {{.SSHURL}}</code>
14 <p><button class="secondary" type="button" data-copy="{{.CloneURL}}">{{icon "copy"}}Copy HTTPS URL</button></p>
15 </div>
16 </details>
17 {{if .Site}}<a class="item" href="{{.Site}}">{{icon "external-link"}}Site</a>{{end}}
18 <span class="item">default branch <code>{{.Ref}}</code></span>
5 <div class="page-head">
6 <div class="page-head-main">
7 <h1>Overview</h1>
8 <p class="page-sub">README, recent work, releases, and contributors · default branch <code>{{.Ref}}</code></p>
9 </div>
10 <div class="page-head-actions">
11 <a class="button" href="/r/{{.Name}}/code">{{icon "code"}}Browse code</a>
12 <details class="clone">
13 <summary>{{icon "copy"}}Clone</summary>
14 <div class="clone-pop">
15 <p class="muted">Read only, no credentials:</p>
16 <code>{{.CloneURL}}</code>
17 <p class="muted">Write over SSH with a registered key:</p>
18 <code>git clone {{.SSHURL}}</code>
19 <p><button class="secondary" type="button" data-copy="{{.CloneURL}}">{{icon "copy"}}Copy HTTPS URL</button></p>
20 </div>
21 </details>
22 {{if .Site}}<a class="button secondary" href="{{.Site}}">{{icon "external-link"}}Site</a>{{end}}
23 </div>
19 24 </div>
20 25
21 26 <div class="overview">