Fork of patx/hglab.

update repo nav ui

Commit d0de1a29de1c · Harrison Erd · 2026-05-03 22:04 -0400

Changeset
d0de1a29de1cfa1659c5bc792f7d0aae2d96c763

View source at this commit

Comments

No comments yet.

Log in to comment

Diff

diff --git a/static/styles.css b/static/styles.css
--- a/static/styles.css
+++ b/static/styles.css
@@ -46,7 +46,7 @@
 .nav form, .repo-tabs form, .inline-form { display: inline; }
 .link-button { padding: 0; color: #0645ad; background: none; border: 0; text-decoration: underline; }
 .repo-tabs .repo-tab { padding-bottom: .2rem; border-bottom: 2px solid transparent; }
-.repo-tabs .repo-tab.active { color: #111; font-weight: 700; text-decoration: none; border-bottom-color: #111; }
+.repo-tabs .repo-tab.active { color: #111; font-weight: 700; text-decoration: none; }
 .filters .active, .tabs .active { color: #111; font-weight: 700; text-decoration: none; }
 .hero, .repo-tabs { margin-bottom: 1.5rem; }
 .eyebrow, .muted, .empty, .nav-user, .repo-card small, .issue-list span, .commit-list span, .file-list span, .clean-list span, .file-kind { color: #666; }
diff --git a/templates/commit_detail.tpl b/templates/commit_detail.tpl
--- a/templates/commit_detail.tpl
+++ b/templates/commit_detail.tpl
@@ -1,17 +1,17 @@
 % rebase("base.tpl", title=commit["short_node"] + " at " + repo["owner_username"] + "/" + repo["name"], user=user, error=error, notice=notice)
 
-% include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
-
 <section class="repo-header slim">
   <div>
-    <p class="eyebrow">Commit {{commit["short_node"]}}</p>
     <h1><a href="/{{repo['owner_username']}}">{{repo["owner_username"]}}</a>/{{repo["name"]}}</h1>
+    
+    % include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
+
   </div>
 </section>
 
 <section class="panel">
   <h2>{{commit["description"].splitlines()[0] if commit["description"] else commit["short_node"]}}</h2>
-  <p class="muted">{{commit["author"]}} · {{commit["date"]}}</p>
+  <p class="muted">Commit {{commit["short_node"]}} · {{commit["author"]}} · {{commit["date"]}}</p>
   <dl class="meta-list">
     <dt>Changeset</dt>
     <dd><code>{{commit["node"]}}</code></dd>
diff --git a/templates/commits.tpl b/templates/commits.tpl
--- a/templates/commits.tpl
+++ b/templates/commits.tpl
@@ -1,11 +1,12 @@
 % rebase("base.tpl", title=repo["owner_username"] + "/" + repo["name"] + " commits", user=user, error=error, notice=notice)
 
-% include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
-
 
 <section class="repo-header slim">
   <div>
     <h1><a href="/{{repo['owner_username']}}">{{repo["owner_username"]}}</a>/{{repo["name"]}}</h1>
+    
+    % include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
+
   </div>
 </section>
 
diff --git a/templates/file.tpl b/templates/file.tpl
--- a/templates/file.tpl
+++ b/templates/file.tpl
@@ -1,10 +1,11 @@
 % rebase("base.tpl", title=file_path + " at " + repo["owner_username"] + "/" + repo["name"], user=user, error=error, notice=notice)
 
-% include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
-
 <section class="repo-header slim">
   <div>
     <h1><a href="/{{repo['owner_username']}}">{{repo["owner_username"]}}</a>/{{repo["name"]}}</h1>
+    
+    % include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
+    
   <div class="breadcrumb">
     <a href="/{{repo['owner_username']}}/{{repo['name']}}/src">root</a>
     % parts = file_path.split("/")
diff --git a/templates/issue_detail.tpl b/templates/issue_detail.tpl
--- a/templates/issue_detail.tpl
+++ b/templates/issue_detail.tpl
@@ -1,19 +1,19 @@
 % rebase("base.tpl", title="#" + str(issue["number"]) + " " + issue["title"], user=user, error=error, notice=notice)
 
-% include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
-
 <section class="repo-header slim">
   <div>
-    <p class="eyebrow">Issue #{{issue["number"]}}</p>
     <h1><a href="/{{repo['owner_username']}}">{{repo["owner_username"]}}</a>/{{repo["name"]}}</h1>
+    
+    % include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
+    
   </div>
 </section>
 
 <section class="panel">
   <div class="panel-heading">
     <div>
-      <h2>{{issue["title"]}}</h2>
-      <p class="muted">{{issue["status"]}} by {{issue["author_username"]}} on {{issue["created_at"]}}</p>
+      <h2>(#{{issue["number"]}}) {{issue["title"]}}</h2>
+      <p class="muted"><strong>{{issue["status"]}}</strong> by {{issue["author_username"]}} on {{issue["created_at"]}}</p>
     </div>
     % if can_maintain:
       <form method="post">
diff --git a/templates/issues.tpl b/templates/issues.tpl
--- a/templates/issues.tpl
+++ b/templates/issues.tpl
@@ -1,10 +1,11 @@
 % rebase("base.tpl", title=repo["owner_username"] + "/" + repo["name"] + " issues", user=user, error=error, notice=notice)
 
-% include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
-
 <section class="repo-header slim">
   <div>
     <h1><a href="/{{repo['owner_username']}}">{{repo["owner_username"]}}</a>/{{repo["name"]}}</h1>
+    
+    % include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
+    
   </div>
 </section>
 
diff --git a/templates/new_issue.tpl b/templates/new_issue.tpl
--- a/templates/new_issue.tpl
+++ b/templates/new_issue.tpl
@@ -1,16 +1,16 @@
 % rebase("base.tpl", title="New issue", user=user, error=error, notice=notice)
 
-% include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
-
 <section class="repo-header slim">
   <div>
-    <p class="eyebrow">Create new issue</p>
     <h1><a href="/{{repo['owner_username']}}">{{repo["owner_username"]}}</a>/{{repo["name"]}}</h1>
+    
+    % include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
+    
   </div>
 </section>
 
 <section class="panel">
-  <h2>Open issue</h2>
+  <h2>Open a new issue</h2>
   <form method="post">
     <label>
       Title
diff --git a/templates/new_pull_request.tpl b/templates/new_pull_request.tpl
--- a/templates/new_pull_request.tpl
+++ b/templates/new_pull_request.tpl
@@ -1,11 +1,11 @@
 % rebase("base.tpl", title="New pull request", user=user, error=error, notice=notice)
 
-% include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
-
 <section class="repo-header slim">
   <div>
-    <p class="eyebrow">Create new pull request</p>
     <h1><a href="/{{repo['owner_username']}}">{{repo["owner_username"]}}</a>/{{repo["name"]}}</h1>
+    
+    % include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
+    
   </div>
 </section>
 
diff --git a/templates/pull_request_detail.tpl b/templates/pull_request_detail.tpl
--- a/templates/pull_request_detail.tpl
+++ b/templates/pull_request_detail.tpl
@@ -1,20 +1,20 @@
 % rebase("base.tpl", title="#" + str(pr["number"]) + " " + pr["title"], user=user, error=error, notice=notice)
 
-% include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
-
 <section class="repo-header slim">
   <div>
-    <p class="eyebrow">Pull request #{{pr["number"]}}</p>
     <h1><a href="/{{repo['owner_username']}}">{{repo["owner_username"]}}</a>/{{repo["name"]}}</h1>
+    
+    % include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
+    
   </div>
 </section>
 
 <section class="panel">
   <div class="panel-heading">
     <div>
-      <h2>{{pr["title"]}}</h2>
-      <p class="muted">{{pr["status"]}} by {{pr["author_username"]}} on {{pr["created_at"]}}</p>
-      <p class="muted">{{pr["source_owner_username"]}}/{{pr["source_repo_name"]}} into {{pr["target_owner_username"]}}/{{pr["target_repo_name"]}}</p>
+      <h2>(#{{pr["number"]}}) {{pr["title"]}}</h2>
+      <p class="muted"><strong>{{pr["status"]}}</strong> <small>(created by <a href="/{{pr["author_username"]}}">{{pr["author_username"]}}</a> on {{pr["created_at"]}})</small></p>
+      <p class="muted"><a href="/{{pr["source_owner_username"]}}/{{pr["source_repo_name"]}}">{{pr["source_owner_username"]}}/{{pr["source_repo_name"]}}</a> into <a href="/{{pr["target_owner_username"]}}/{{pr["target_repo_name"]}}">{{pr["target_owner_username"]}}/{{pr["target_repo_name"]}}</a></p>
     </div>
     % if can_maintain and pr["status"] == "open":
       <div class="filters">
diff --git a/templates/pull_requests.tpl b/templates/pull_requests.tpl
--- a/templates/pull_requests.tpl
+++ b/templates/pull_requests.tpl
@@ -1,10 +1,11 @@
 % rebase("base.tpl", title=repo["owner_username"] + "/" + repo["name"] + " pull requests", user=user, error=error, notice=notice)
 
-% include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
-
 <section class="repo-header slim">
   <div>
     <h1><a href="/{{repo['owner_username']}}">{{repo["owner_username"]}}</a>/{{repo["name"]}}</h1>
+    
+    % include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
+    
   </div>
 </section>
 
diff --git a/templates/repo.tpl b/templates/repo.tpl
--- a/templates/repo.tpl
+++ b/templates/repo.tpl
@@ -1,7 +1,5 @@
 % rebase("base.tpl", title=repo["owner_username"] + "/" + repo["name"], user=user, error=error, notice=notice)
 
-% include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
-
 <section class="repo-header">
   <div>
     <p class="eyebrow">
@@ -10,6 +8,9 @@
        % end
     </p>
     <h1><a href="/{{repo['owner_username']}}">{{repo["owner_username"]}}</a>/{{repo["name"]}}</h1>
+
+    % include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
+
     <p>{{repo["description"] or "No description yet."}}</p>
   </div>
   <div class="clone-box">
diff --git a/templates/repo_settings.tpl b/templates/repo_settings.tpl
--- a/templates/repo_settings.tpl
+++ b/templates/repo_settings.tpl
@@ -1,10 +1,11 @@
 % rebase("base.tpl", title=repo["owner_username"] + "/" + repo["name"] + " settings", user=user, error=error, notice=notice)
 
-% include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
-
 <section class="repo-header slim">
   <div>
     <h1><a href="/{{repo['owner_username']}}">{{repo["owner_username"]}}</a>/{{repo["name"]}}</h1>
+    
+    % include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
+    
   </div>
 </section>
 
@@ -16,7 +17,7 @@
       Repository description
       <input name="description" value="{{repo['description']}}" maxlength="500" placeholder="Repository description">
     </label>
-    <button class="button" type="submit">Save settings</button>
+    <button class="button" type="submit">Save description</button>
   </form>
 </section>
 
diff --git a/templates/source.tpl b/templates/source.tpl
--- a/templates/source.tpl
+++ b/templates/source.tpl
@@ -1,11 +1,12 @@
 % rebase("base.tpl", title=repo["owner_username"] + "/" + repo["name"] + " source", user=user, error=error, notice=notice)
 
-% include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
-
 <section class="repo-header slim">
   <div>
     <h1><a href="/{{repo['owner_username']}}">{{repo["owner_username"]}}</a>/{{repo["name"]}}</h1>
-  <div class="breadcrumb">
+    
+    % include("repo_nav.tpl", repo=repo, commit_count=commit_count, issue_counts=issue_counts, pr_counts=pr_counts, star_count=star_count, is_starred=is_starred, is_owner=is_owner, can_maintain=can_maintain)
+
+    <div class="breadcrumb">
     <a href="/{{repo['owner_username']}}/{{repo['name']}}/src">root</a>
     % if current_path:
       % parts = current_path.split("/")