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/vole.git

Write over SSH with a registered key:

git clone ssh://git@rodent.software:2222/vole.git

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

Unify terminology across the web UI and docs

ab326d3ac1fd947a9df45f31f6dc10ab38627882 · Keenan Nemetz · 14d ago · parent 5b814e99

Unify terminology across the web UI and docs

Use account, repository, change request, enrollment link, instance admin, and sign in/out consistently. Rename the access guide to accounts-and-access.md, update its links, and record the canonical terms and retained command/URL spellings in the documentation index.

server/web/home.go +5−5

@@ -5,7 +5,7 @@ package web
5 5 // The landing page answers three questions in one screen: what this forge is,
6 6 // what is in it, and what happened lately. Repositories are the main column; the
7 7 // merged feed is a rail beside them. Both come from one read per repository, so
8 // listing a project does not cost a second walk over its history.
8 // listing a repository does not cost a second walk over its history.
9 9
10 10 import (
11 11 "net/http"
@@ -46,7 +46,7 @@ type homeVitals struct {
46 46 LastActivity time.Time
47 47 }
48 48
49 // repoCard is one repository in the project grid. It is a summary of the same
49 // repoCard is one repository in the repository grid. It is a summary of the same
50 50 // activity feed the rail uses, not a second source of truth.
51 51 type repoCard struct {
52 52 Name string
@@ -88,8 +88,8 @@ type instanceActivityData struct {
88 88 }
89 89
90 90 // IndexPage serves GET /{$}: the landing page, or repository search results when
91 // q is set. Search results reuse the project cards so a match looks like a
92 // project rather than a table row.
91 // q is set. Search results reuse the repository cards so a match looks like a
92 // repository rather than a table row.
93 93 func (w *Web) IndexPage(rw http.ResponseWriter, r *http.Request) {
94 94 query := strings.TrimSpace(r.URL.Query().Get("q"))
95 95 entries, err := w.visibleRepos(r, query)
@@ -334,7 +334,7 @@ func (w *Web) homeVitals(r *http.Request, entries []index.Entry, events []activi
334 334 func (w *Web) instanceInfo(_ *http.Request) instanceInfo {
335 335 info := instanceInfo{
336 336 Name: "Vole",
337 Tagline: "Code, issues, changes, and CI, hosted here.",
337 Tagline: "Code, issues, change requests, and CI, hosted here.",
338 338 }
339 339 if w.Cfg != nil {
340 340 if v := strings.TrimSpace(w.Cfg.InstanceName); v != "" {