Commit Graph
531 Commits
Author SHA1 Message Date
Vinta ChenandClaude 23b40a8476 style: balance section heading line breaks
Section headings could wrap with a single word on the last line.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-25 21:55:57 +08:00
Vinta ChenandClaude e1d4806abb fix: hide decorative arrows and the search icon from screen readers
Arrow glyphs on rows, jump links, sort headers, and the category toggle, plus the search icon, were exposed to assistive tech, adding noise to every row and link name.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-25 21:55:57 +08:00
Vinta ChenandClaude b46518c497 style: show a single focus ring on the search field
Text inputs match :focus-visible on click, so the search field showed the accent outline on top of its own tinted focus border.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-25 21:55:43 +08:00
Vinta ChenandClaude d829a262a3 style: center tag tap targets without overlapping neighbours
Each tag's tap area overlapped the next tag's and, with both insets plus min-height set, grew downward only, sitting off-center.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-25 21:55:43 +08:00
Vinta ChenandClaude 242af0e11e style: extend topbar link tap targets to 44px
Topbar links were about 37px tall, short of a 44px touch target.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-25 21:55:43 +08:00
Vinta ChenandClaude ac8cffc779 style: enlarge category link tap targets on phones
On phones the hero's category links were about 17px tall and 4.5px apart, below the 24px minimum touch target.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-25 21:55:43 +08:00
Vinta ChenandClaude ba0d4c397e fix: keep the hidden back-to-top button out of the tab order
The hidden back-to-top button was only transparent, so Tab still stopped on it and its focus outline was invisible.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-25 21:55:24 +08:00
Vinta Chen 4c4298751f remove litellm, it got hacked twic 2026-10-22 12:37:01 +08:00
Vinta ChenandClaude f8e618ccae style: match each hero's bottom gap to its top gap
The heroes ended 38px (home), 59px (category pages), and 80px (sponsorship) below their last line, against 20px above their top bar.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-22 00:13:55 +08:00
Vinta ChenandClaude 5ab66e83e8 style: match each section's bottom gap to its top gap
Measured from the section edge to the nearest glyph or filled box, the guide band put 92px under its text against 51px above its heading, the sponsor band 67px against 52px, and the Sponsorship page sections ranged from 69px to 92px under content that sat 68px to 84px below their tops.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-22 00:05:01 +08:00
Vinta ChenandClaude 65ce927b80 style: match the contribute section's bottom gap to its top
The space above the label's first line added about 8px to the visible top gap, so the buttons sat closer to the footer than the label sat to the table.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-22 00:01:48 +08:00
Vinta ChenandClaude 36a05fc3b7 style: match the gap under the search box to the gap above the table heading
The search box sat 22px above the table while the heading sat 48px below the sponsor band.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:58:05 +08:00
Vinta ChenandClaude 3efb5a35bf style: keep the search hint on one line and shorten the homepage table heading
The hint's column capped at 28rem, so "Press / to search. Tags open their category. Click a row for details." wrapped to two lines beside the heading.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:56:32 +08:00
Vinta ChenandClaude d87b4601a3 style: list categories down each column in the browse-by-category nav
The grid filled rows left to right, so reading down a column skipped through README order four categories at a time.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:53:50 +08:00
Vinta ChenandClaude 039769f0f9 style: tighten the gap under the contribute section's label
The label's 1.5rem bottom margin stacked on the section's 1rem grid gap, leaving 51px between "Contribute" and the heading.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:52:17 +08:00
Vinta ChenandClaude e11a67638d style: drop the scroll-in reveal animation from every section
Sections faded and slid in as they scrolled into view, so screenshots and quick scrolls caught the sponsor band and search box half-drawn.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:51:21 +08:00
Vinta ChenandClaude 6577093a7e style: shrink the contribute section's top and bottom gaps
The section put 88px above its label and below its buttons; it now uses the page's side gutter like the table and guide sections.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:50:08 +08:00
Vinta ChenandClaude 97cd7b28fb style: show the contribute section without the scroll-in animation
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:50:07 +08:00
Vinta ChenandClaude d5c61d469b style: shrink the gaps above the table and the category guide
The table section started 72px below the sponsor band, and a one-line order note sat at the bottom of its grid row beside the two-line search hint, so category pages put 97px above the first text. The guide band put 81px above its heading. Both now use the page's side gutter.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:46:14 +08:00
Vinta ChenandClaude 3a5af3f87f style: list stars before the commit time in expanded rows
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:44:32 +08:00
Vinta ChenandClaude a08148a2f2 style: start the commit time on its own line in phone expanded rows
On phones the links line wrapped mid-phrase, splitting "19 hours ago" across two lines after the repository URL.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:39:44 +08:00
Vinta ChenandClaude 4ea309ff7d style: render homepage descriptions in the category pages' description row
The homepage printed each description inside its expanded row as .expand-desc, styled apart from the .desc-row that category pages use, so every spacing change to the table had to be tuned twice. The homepage now reveals the same .desc-row while a row is open, so its descriptions take the category pages' 15.2px size, and the .expand-desc markup and styles are gone.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:37:37 +08:00
Vinta ChenandClaude 7fa386709c fix: align phone table rows on one left edge
On phones the hidden number column is the first cell, so the name column fell back to the 0.55rem inner padding and names and descriptions sat 4px left of the links line and group headings, which use 0.8rem.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:31:25 +08:00
Vinta ChenandClaude 540bb66ed6 style: tighten the gaps between a row's name, description, and links
An open row put about 38px between the project name and its description and 10px before its links, and category rows put 26px between name and description, because .table tbody td overrode the zero top padding meant for description and expand rows. The top gap is now about 2px larger than the bottom one, since the bold name's descenders make an equal gap look smaller.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:28:59 +08:00
Vinta ChenandClaude f171784d4f style: give an open row and its expand row one flat background
Each row restarted its own gradient, so the darker bottom of the open row met the lighter top of its expand row and read as a faint border between them.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:18:52 +08:00
Vinta ChenandClaude b58c1ff4a1 refactor: drop Odoo pick aliases the ERP intro no longer uses
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:13:13 +08:00
Vinta ChenandClaude e1875b6b2b docs: rewrite ERP category intro
The ERP category lists one project, Odoo, but the intro's "How to choose" list compared Odoo editions and hosting options as if they were picks.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:13:13 +08:00
Vinta ChenandClaude b039f790ca feat: keep only the lead above the table for an intro without a pick list
An intro without a "How to choose" list, as a one-project category has no picks to compare, rendered all of its guide paragraphs above the table, pushing the table down. It now shows the lead above the table and moves the rest into the guide.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:13:13 +08:00
Vinta ChenandClaude 6e9dc809af fix: drop plural and sort/search hints on single-project category pages
Pages with one project read "Search 1 projects" and told readers to re-sort or search a one-row table.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 23:12:13 +08:00
Vinta ChenandClaude 9177a2e8a7 fix: link full project names in intro picks that matched only part
Nine picks, such as "OpenAI Agents SDK", "MCP Python SDK", and "Jupyter Notebook", linked only part of the name or nothing, because the README lists those projects under their PyPI or repo names. The punctuation-guard test used "The Algorithms - Python", which now matches its alias in full, so it uses a made-up name instead.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 22:44:16 +08:00
Vinta ChenandClaude af95036e0e fix: link whole Odoo edition names in the ERP intro picks
"Odoo Online", "Odoo Community", and "Odoo Enterprise" matched only "Odoo", so each link stopped before the edition name.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 22:40:04 +08:00
Vinta ChenandClaude b69cb3f565 fix: link the whole "Ray Core" pick in the distributed computing intro
Only "Ray" matched the ray entry, so the link stopped before "Core".

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 22:38:40 +08:00
Vinta ChenandClaude 262d914e5d fix: correct site copy that described a tag filter and mixed terminology
Copy told visitors to tap a tag to filter and mentioned a filter although tags are plain links and no filter exists; casing and terminology were inconsistent.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 22:35:14 +08:00
Vinta ChenandClaude 52851226e0 fix: clarify sponsorship price, duration, and placement wording
"Indie Dev from $99 a month" put "from" on one tier although every tier discounts longer terms, the duration line listed terms the tier cards don't price, and the independence note left out the site placement.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 22:35:14 +08:00
Vinta ChenandClaude e51b74c03d fix: show months instead of 0 years for dates under a year old
Commit dates 360-364 days old rendered as "0 years ago".

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 22:32:35 +08:00
Vinta ChenandClaude 60d6cd8dd6 style: align sponsor link with its label in the stacked sponsor band
Below 960px the -1rem top margin on the sponsor link, meant for the side-by-side desktop layout, pulled the sponsor name closer to the link than the link sat to its own label, so the link read as part of the sponsor entry.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 20:37:51 +08:00
Vinta ChenandClaude 11b72122c5 feat: drop the build date stat from the hero stats lines
The hero "Updated on" stat only restated when the site was last built.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 20:21:48 +08:00
Vinta ChenandClaude 28b03ce6b7 fix: stack hero stats on phones instead of running them together
On phones the hero stats ran together as one sentence, breaking wherever space ran out and leaving a "/" dangling at a line end.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 20:17:42 +08:00
Vinta ChenandClaude 9d4f372a79 fix: shorten sponsorship email buttons and break address only after @
At phone width the two primary buttons labelled with the full address wrapped over three lines, and the address in the Get started sentence broke at its hyphen.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 20:09:39 +08:00
Vinta ChenandClaude 7516a5c4f6 fix: keep each hero stat on one line and read "Updated on"
On phones the ISO date in the hero stat broke at its hyphen.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 20:03:15 +08:00
Vinta ChenandClaude 7ebd061a78 feat: render build date as ISO 8601 in home, sponsorship, and llms.txt
Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 19:59:57 +08:00
Vinta ChenandClaude 82320c9d23 fix: remove animated sheen from hero background
On narrow phone heroes the sheen, a diagonal light stripe sliding across for 54s after load, rendered as a near-vertical band sweeping sideways that read as a loading or progress bar.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 19:57:47 +08:00
Vinta ChenandClaude 19a619ebbb fix: size the home hero to its content height
The home hero was forced to the full viewport height, opening an empty band between the top bar and the headline whenever its content was shorter than the window and pushing the project table down.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 16:42:35 +08:00
Vinta ChenandClaude e0dd1e7ca4 docs: tighten sponsor copy in README, SPONSORSHIP.md, and sponsorship page
The sponsor copy bolded two phrases in the README call to action, repeated tier prices already in the tier headings, repeated one phrase across three Content tiers, and had a double "or" in the Duration line.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 16:37:36 +08:00
Vinta ChenandClaude 15843ae568 fix: use the shared accent focus outline on more links
Sponsorship-page, sponsor band, category, group-page lead, and home hero links fell back to the browser's default focus ring.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 16:36:33 +08:00
Vinta ChenandClaude cf804b5f78 fix: shorten the search placeholder on phones
The full placeholder was cut off on narrow screens, e.g. "Search 529 projects across 74".

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 16:36:33 +08:00
Vinta ChenandClaude ebdda1367c fix: keep the UTM label on one line in its code chip
The inline code in the sponsorship UTM note broke across lines at 1280px.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 16:36:33 +08:00
Vinta ChenandClaude 6769bc86bb feat(website): tell sponsors about UTM tags on the sponsorship page
SPONSORSHIP.md tells sponsors their links carry UTM tags, but the /sponsorship/ page, which mirrors it, left that out.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 16:28:44 +08:00
Vinta ChenandClaude 85912280e2 style: enlarge back-to-top tap target to 37x36px
The table header's back-to-top button had a 37x20px tap target, below the WCAG 2.2 minimum of 24x24px.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 16:26:27 +08:00
Vinta ChenandClaude 766bff0c08 style: set sponsor band apart from the search section and mark names as outbound links
The sponsor band's background faded from --bg-paper-strong to --bg-paper, ending lighter than the page below it, with only a faint bottom border, so the band blended into the search section and read as its intro rather than a sponsor placement; the sponsor name also gave no cue that it links out.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-10-21 16:22:57 +08:00