[Bug]: Theme preset geist points at undefined --font-geist
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 73/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- next.js, typescript
- Domain
- frontend
Research direction
Start by tracing how theme.preset is decoded and mapped to CSS font variables, then compare the geist preset mapping with the Geist font loader variable shown in the issue. Update the mapping so --font-sans and --font-heading resolve to --font-geist-sans; verify the generated theme CSS uses that variable.
Written by the indexing model from the issue text.
Description
Where does this happen?
Hosted docs site (a URL on docs.page)
docs.page URL
https://docs.page/invertase/reeval~docs%2Frebuild-preview
GitHub repository
invertase/reeval
What happened?
docs.json sets theme.preset to b2fA. That shadcn preset's font is geist.
The hosted page resolves the preset to:
--font-sans: var(--font-geist);
--font-heading: var(--font-geist);
The font loader on the same page registers Geist as --font-geist-sans ("Geist", "Geist Fallback"), via the geist_…__variable class. Nothing defines --font-geist. The tokens resolve empty, and the site keeps the platform font stack.
Expected: --font-sans and --font-heading reference --font-geist-sans.
Steps to reproduce
- Set
theme.presettob2fAindocs.json(npx shadcn preset decode b2fAreports fontgeist). - Open https://docs.page/invertase/reeval~docs%2Frebuild-preview
- In the page payload, the resolved theme CSS sets
--font-sansand--font-headingtovar(--font-geist). - In the site CSS, the Geist next/font module defines
--font-geist-sans, not--font-geist.
Area
docs.json / configuration
CLI version or browser
Hosted site, observed 23 Oct 2026. Not a CLI issue.
Relevant log output
--font-sans: var(--font-geist);
--font-heading: var(--font-geist);
.geist_7e573fc1-module__ELTdiq__variable { --font-geist-sans: "Geist", "Geist Fallback" }
Additional context
b2fA decodes to style nova, base neutral, theme neutral, font geist, heading inherit.
Inter would connect: its loader variable is --font-inter, which is --font- plus the preset id. Geist is split into sans and mono, so the bare id geist does not match --font-geist-sans.
- Dominant language
- TypeScript
- Stars
- 675
- Forks
- 104
- Avg merge
- 4d 13h
- Merged PRs (30d)
- 6
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from invertase/docs.page
-
Difficulty 3/5 1-2 days Newbie friendliness 58/100
invertase/docs.page#579 · 3 comments ·
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 54/100
Maintainers usually reply within 1 day
-
future Github Issue status: discussion
Difficulty 4/5 3-5 days Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
agents Github Issue next
Difficulty 3/5 1-2 days Newbie friendliness 55/100
Maintainers usually reply within 1 day
-
agents future Github Issue status: discussion
Difficulty 5/5 Over a week Newbie friendliness 20/100
Maintainers usually reply within 1 day
All issues in invertase/docs.page
Similar issues
-
[Bug]: REST API URL starting with "http" but no scheme (e.g. httpbin.org/get) is not given an http:// prefixPossibly taken @ItsDeadlyProgrammer claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
appsmithorg/appsmith#42471 · 1 comment ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
ehmpathy/rhachet-roles-bhrain#705 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
Status: Triage
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
mermaid-js/mermaid#8546 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
braintrustdata/braintrust-sdk-javascript#2659 ·
Maintainers usually reply within 1 day