Skip to content

Conversation

@pettinarip
Copy link
Member

@pettinarip pettinarip commented Jan 14, 2026

Summary

  • Add dynamic grant round landing pages with MDX content (/rounds/[slug])
  • Auto-generate sidebar navigation from MDX headings using rehype-slug
  • Consolidate active round banner into Banners component (hardcoded AGR26)
  • Add Open Rounds tab to applicants page (/applicants/open-rounds)
  • Filter round-tagged items from regular RFP and Wishlist listings
  • Improve hero layout with floating nav overlay and content overlap styling

Test plan

  • Visit /rounds/agr26 to verify MDX rendering and sidebar
  • Verify active round banner appears in site header
  • Test /applicants/open-rounds and verify AGR26 items filtered from other listings
  • Test responsive behavior on mobile

Preview: https://deploy-preview-494--ecosystem-support.netlify.app/

Implement infrastructure for grant round landing pages that aggregate
RFP or Wishlist items tagged with a round identifier. Features include:

- MDX content files with frontmatter metadata for round configuration
- Dynamic [slug].tsx page with hero, sidebar, and item list
- Styled MDX components with Chakra UI for consistent rendering
- Automatic heading IDs for sidebar navigation
- Site-wide banner for active rounds
- Salesforce integration to filter items by tag
- ISR revalidation for fresh content

Includes example AGR26 (Academic Grants Round 2026) content.
- Refactor GrantsHero for separate mobile/desktop layouts with proper
  background image positioning and gradient overlays
- Add floating nav support for hero pages (academic grants and rounds)
- Use Chakra semantic z-index tokens instead of hardcoded values
- Fix mobile padding consistency in RoundPage
@pettinarip pettinarip marked this pull request as draft January 14, 2026 11:09
- Add horizontal margins and negative top margin to RoundPage content
  to create overlap effect with hero section
- Update GrantsHero gradient to fade to white for smooth transition
- Increase hero height and adjust title box positioning for better
  vertical centering
Move active round fetching logic from Layout to Banners component,
delete the separate ActiveRoundBanner component, and clean up unused
theme colors. The banner now self-manages its data fetching and
visibility logic.
Simplify active round banner by hardcoding AGR26 data instead of
fetching from API. This removes the need for client-side fetching
and the associated useState/useEffect hooks. The API endpoint is
no longer needed and has been removed.

TODO: Replace with server components when available.
…stings

- Add new "Open Rounds" tab to /applicants page navigation
- Create /applicants/open-rounds page listing active grant rounds
- Filter AGR26-tagged items from regular RFP and Wishlist listings
- Add getRoundTags() helper to extract round tags from MDX files
- Update getGrantInitiativeItems() to exclude round-tagged items by default
@pettinarip pettinarip changed the title feat: Add dynamic grant round landing pages with styled MDX feat: Grant round landing pages, Open Rounds tab, and active round banner Jan 15, 2026
…e dependency

Refactor grant initiative selection to support mixed item types in round pages:
- Create GrantInitiativeSelection component that accepts a getItemUrl function
- Simplify RFPSelection and WishlistSelection to wrap the generic component
- Update getGrantInitiativeItemsByTag to filter by tag only, not type
- Remove itemType from round frontmatter and open-rounds display
Replace oversized heading with a subtle notice box using brand colors,
a clock icon, and smaller text that fits better within the page context.
@pettinarip pettinarip force-pushed the feat/grant-round-landing-pages branch from 1aaa173 to 2f29433 Compare January 15, 2026 16:37
Reorder the applicants tabs so Open Rounds appears after RFPs instead of
at the beginning of the list.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants