gitoriaLog in with ident

gitoria

All repositories: gitoria

ReadmeCodePull requestsReleasesTicketsSettings
Commit205d5fe4205d5fe4gitoria: Hybriel master ff51cf46; ssh keys/tokens no double rows (session sync); gates follow #20mre205d5fe4/components/readme.hl

1.5 KB

  1. // components/readme.hl — THE README VIEW of a repo (ticket #8, gitoria#16): `/` on <slug>.<domain>, composed
  2. // into components/index.hl. Rendered on the SERVER with its content: the repo from the request's host, the
  3. // README.md / $docs Markdown from git (git.hl homepageNow — hl:proc run() waits, hybriel#80).
  4. import RepoHead from './repohead.hl'
  5. import Markdown from './markdown.hl'
  6. import { repoAt } from '../repos.hl'
  7. import { homepageNow } from '../git.hl'
  8. import { slugOfHost } from '../users.hl'
  9. host = null
  10. slug = slugOfHost(host)
  11. repo = repoAt(slug)
  12. hasRepo = repo != null
  13. home = repo != null ? homepageNow(slug, repo.branch) : null
  14. docsFound = home != null && home.found
  15. docsNone = home != null && !home.found
  16. docsTruncated = home != null && home.truncated
  17. docs = home != null ? home.files : []
  18. View {
  19. repoPage {
  20. RepoHead { }
  21. if (hasRepo) {
  22. dl {
  23. dt { "Address" }
  24. dd { a { id = "repoaddress" href = repo.address repo.address } }
  25. dt { "Owner" }
  26. dd { id = "repoowner" repo.owner }
  27. dt { "Created" }
  28. dd { time { id = "repocreated" repo.created } }
  29. }
  30. if (docsNone) { p { id = "nohomepage" class = "empty" "This repository has no README.md yet. Open the " a { id = "tocode" href = "/code" "Code" } " page to see how to push code." } }
  31. if (docsFound) {
  32. repoHomepage { id = "homepage"
  33. for (d of docs) {
  34. homepageFile {
  35. if (d.isDocs) { code { class = "path" d.path } }
  36. Markdown { blocks = d.blocks }
  37. }
  38. }
  39. if (docsTruncated) { p { id = "docstruncated" class = "muted" "Very long files are cut off here." } }
  40. }
  41. }
  42. }
  43. }
  44. }

Branches

Latest commits

  • 205d5fe4gitoria: Hybriel master ff51cf46; ssh keys/tokens no double rows (session sync); gates follow #20mre
  • 9b27cb26gitoria#21: installable app (manifest, service worker, offline start page), own iconmre
  • 68dcb603deploy.sh: back up live storage/.sessions/.env before every deploy (newest 5 kept)mre
  • e2deed6dgitoria#20: "Add code" only on the Code page of an empty repository, no collapsiblemre
  • 8bb97ffddeploy.sh: never send .git or .gitignore to Byrodinmre
  • fd981932State of 2026-09-27; bin/ no longer tracked (Hybriel commit is in README)mre
  • 4a2d7125initial commitmre