Commit e5d22c7
Paginate directory and add cross-page name search (#580)
* Paginate directory and add cross-page name search
The /directory/ page rendered all 1,334 member cards into a single
2.9MB HTML file, with no loading indicator while Shuffle.js laid them
out. This switches to Hugo pagination (60/page) for the default view
and adds a JSON-driven filter path so search and the existing
interest/language/location filters still scan the full directory.
- Hugo pagination via .Paginate; pagination nav reused from the
default list layout pattern
- New directory/list.json output emits every entry's searchable fields
plus its rendered card HTML, so the JSON-driven view doesn't need to
reimplement card markup in JS
- Name search input added above the existing filter dropdowns;
diacritic-insensitive (NFD-normalised) so "maelle" matches "Maëlle"
- Active filters and search syncing to ?q=&interests=&languages=
&location= so filtered views are shareable and survive reload
- Filtered results render in requestAnimationFrame batches of 20 to
avoid blocking the main thread when a broad filter matches hundreds
of cards
- Shuffle init wrapped in try/catch and isCentered:true removed —
Shuffle's __getCenteredPositions has a bug where a missed splice
leaves undefined entries, causing TypeError on .includes during
initial layout
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* Render directory bio as markdown and drop per-entry r_packages
The new directory JSON schema may include a `bio` key with markdown
text. Surface it as the page Content via _content.gotmpl so it renders
through Hugo's markdown pipeline. Reorganise the right column card to
show About above Interests/Activities (using the i18n "about" label
without repeating the entry name), and only render the Activities
heading when r_groups actually has entries.
Drop the inline r_packages section that read from the per-entry JSON;
authored packages are sourced from awesome-rladies-creations now and
already render via the existing remote walk + hex-wall.
Add bio fields to the Grace Hopper and Hedy Lamarr sample entries so
the markdown rendering is exercised in the build.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent b438ab7 commit e5d22c7
14 files changed
Lines changed: 293 additions & 70 deletions
File tree
- content/directory
- data/directory
- i18n
- themes/hugo-rladiesplus/layouts/directory
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
4 | 7 | | |
5 | 8 | | |
6 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
4 | 7 | | |
5 | 8 | | |
6 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
5 | 8 | | |
6 | 9 | | |
7 | 10 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
4 | 7 | | |
5 | 8 | | |
6 | 9 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
4 | 5 | | |
5 | 6 | | |
6 | 7 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
| 4 | + | |
4 | 5 | | |
5 | 6 | | |
6 | 7 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
| 57 | + | |
| 58 | + | |
57 | 59 | | |
58 | 60 | | |
59 | 61 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
| 57 | + | |
| 58 | + | |
57 | 59 | | |
58 | 60 | | |
59 | 61 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
54 | 54 | | |
55 | 55 | | |
56 | 56 | | |
| 57 | + | |
| 58 | + | |
57 | 59 | | |
58 | 60 | | |
59 | 61 | | |
| |||
0 commit comments