Skip to content

Feat/landing page#35

Merged
Rowee13 merged 18 commits intomainfrom
feat/landing-page
Apr 17, 2026
Merged

Feat/landing page#35
Rowee13 merged 18 commits intomainfrom
feat/landing-page

Conversation

@Rowee13
Copy link
Copy Markdown
Owner

@Rowee13 Rowee13 commented Apr 17, 2026

Description

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Refactoring (no functional changes)
  • Performance improvement
  • Test coverage improvement

Related Issues

Closes #

Changes Made

Screenshots (if applicable)

Testing

  • All existing tests pass
  • Added new tests for the changes
  • Tested locally

Checklist

  • My code follows the project's code style
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published

Additional Notes

Rowee13 and others added 18 commits April 17, 2026 08:53
Design for /feat/landing-page: dark hero + light sections, server-component
shell with Framer Motion client islands, GitHub Discussions wishlist via
cached GraphQL, Try Demo CTA moved from login to landing.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
15-task bite-sized plan for the landing page feature on feat/landing-page:
scaffold -> sections -> github fetch -> login cleanup -> manual QA.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Declare GITHUB_REPO_OWNER, GITHUB_REPO_NAME, and
GITHUB_DISCUSSIONS_CATEGORY_ID in turbo.json build task env so the
server-only client in apps/web/lib/github.ts passes
turbo/no-undeclared-env-vars lint.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Public routes like the landing page trigger AuthContext.checkAuth, which
calls /api/auth/refresh without a refresh cookie. Throwing a plain Error
caused Nest's ExceptionsHandler to log it as ERROR. UnauthorizedException
returns the same 401 to the client without polluting the API logs.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
GitHub's GraphQL API requires authentication for all queries, including
public-data reads. The unauthenticated fetch was returning 403, so the
landing page wishlist was always empty.

Adds GITHUB_TOKEN env var (fine-grained PAT with Discussions: Read-only)
and sends it as a Bearer token in the Authorization header. Returns
empty array if the token is missing so the page degrades gracefully.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@Rowee13 Rowee13 merged commit 3fdc8b0 into main Apr 17, 2026
5 checks passed
@Rowee13 Rowee13 deleted the feat/landing-page branch April 17, 2026 04:53
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.

1 participant