Radish alpha
r
rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5
Radicle web interface
Radicle
Git
Improve repo card UI/UX/a11y
Merged did:key:z6MkvAFB...DRLV opened 1 year ago

This started out as a quick follow-up to Daniel’s request for touch-ups on Zulip.

What this patch changes:

  • use monospaced font for repo id
  • add explanatory tooltips on hover of potentially unclear elements on repo card UI. All copies are in Title Case (Wikipedia style) and are designed to be glanceable and succinct.
    • when hovering the seeder count badge: “$x Nodes Seeding This Repository”
    • when hovering the issue/patch count: “$x Issues and $y Patches Open”
    • when hovering the last-updated copy: “$fullTs — Latest Commit to Canonical Branch” (added trailing copy to pre-existing tooltip)
    • when hovering the abbreviated RID: “$fullRid — Repository Identifier” (added trailing copy to pre-existing tooltip)
  • remove some misleading inert styling code
  • make seeder count badge less contrasting/distracting. This results in the eye having half as many scan targets per card row (just the repo title, not it and the seeder count badge).
  • make seeder count badge blend better with card hover effect (previously unaffected resulting in the badge standing out)
  • replace some divs with more semantic html
  • clearly show when the card is keyboard-focused
  • make badges not tabbable. Were so by default, even if they are not clickable (!) and in fact that functionality was nowhere used throughout the codebase.

Notable non-changes:

  • I didn’t make the RID on the card clickable to copy the full RID since I think
    • this will more often end up being clicked by mistake while users just want to click the card itself
    • there’s a more intuitive alternative: click the card, the full RID is now front and center and able to be click-to-copied
1 file changed +2 -1 11b7a920 e9c783f0
modified src/components/RepoCard.svelte
@@ -192,7 +192,8 @@
        <span
          title={repo.rid}
          style:color="var(--color-foreground-emphasized)"
-
          style:margin-left="auto">
+
          style:margin-left="auto"
+
          style="font-family: monospace;">
          {formatRepositoryId(repo.rid)}
        </span>
      </div>