QuantEcon / QuantEcon/quantecon-theme.mystmd

SiteFooter accepts a className prop but never applies it

Open Beginner friendly
#232 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

good first issue low-priority
Dominant language
TypeScript
Stars
1
Forks
1
Avg merge
1d 6h
Merged PRs (30d)
56

Description

SiteFooter declares className?: string in its props but never uses it — the outer element composes only its own classes plus the grid, so anything a caller passes is silently dropped.

This is cosmetic today rather than a bug: the sole caller (app/components/PageContent.tsx) does not pass className, so nothing currently misbehaves. It is worth fixing because the prop is a silent no-op waiting for someone to trust it, and because SiteFooter is the only component in the codebase that does this — ProjectFrontmatter, ThemeButton and Search all fold their className into a classNames(...) call as expected.

Noted by Copilot on #221 as a suppressed comment; left out of that PR to avoid an unrelated change on a green branch.

Fix

Either apply the prop:

className={classNames(
  'qe-site-footer col-screen text-qetext-light text-opacity-80 dark:text-qetext-dark-muted subgrid-gap',
  grid,
  className
)}

…or drop className from the signature entirely. SiteFooter is repo-local (added 2025-02-14, and no such component exists in @myst-theme), so there is no upstream shape to stay compatible with and either direction is safe. Applying it is the smaller change and matches the rest of the codebase.

🤖 Generated with Claude Code

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Find the SiteFooter component and inspect its props and outer element, then compare its className handling with ProjectFrontmatter, ThemeButton, and Search. Apply the passed className consistently with the existing classes, and verify that the sole caller in app/components/PageContent.tsx remains unaffected and the prop is no longer silently ignored.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
84/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.