gitshark

Clone repository

git clone https://gitshark.ha1nz.de/git/workaround/Gitshark.git
git clone ssh://git@gitshark.ha1nz.de:22/workaround/Gitshark.git

1. Failing tests first

  • [x] 1.1 Add a test: anonymous GET / returns 200 and body contains all three value propositions ("Use AI as a tool, not as a feature", "Focus on co-working, not lazy feeds", "Easy and painless to self-host")
  • [x] 1.2 Add a test: anonymous GET / body does NOT render the repository table (asserts landing, not repo list)
  • [x] 1.3 Add a test: authenticated GET / still renders the repository list (existing behavior unchanged)
  • [x] 1.4 Add a test: anonymous GET /explore returns 200 and lists repositories visible to anonymous users
  • [x] 1.5 Run the suite, confirm the new tests fail (red)

2. Backend routing

  • [x] 2.1 Add landing() native template method to HomeResource.Templates (@CheckedTemplate)
  • [x] 2.2 Branch HomeResource.home() on currentUser.get(): null → Templates.landing(...), non-null → existing repo list
  • [x] 2.3 Add GET /explore endpoint rendering the repository list for service.listVisibleTo(null)
  • [x] 2.4 Add protected GET /login (in authenticated paths) that OIDC intercepts, then redirects to /

3. Templates & styling

  • [x] 3.1 Create templates/HomeResource/landing.html: dark hero, glowing ASCII-art <pre> block, three value props, "Log in" CTA, self-host link, "Browse public repositories" → /explore
  • [x] 3.2 Add CSS for the dark hero + glow (stacked text-shadow, monospace <pre>, clamp() font size, overflow-x:auto wrapper); no JavaScript
  • [x] 3.3 Landing renders a self-contained anonymous header (Log in / self-host) instead of guarding layout.html nav — avoids hiding the authenticated nav on repo pages that don't pass user

4. Verify

  • [x] 4.1 Run ./mvnw test — all tests green (52/52)
  • [x] 4.2 Manual check in quarkus:dev: anonymous / shows hero, logged-in / shows repos, /explore lists public repos
  • [x] 4.3 Update README.md if the public landing//explore behavior is user-facing

Keyboard shortcuts

?Show this help
g hGo home
EscClose dialog