A static site of categorized frontend interview Q&A — free, open content, no account needed to read.
For the product rationale, full stack breakdown, and a record of the alternatives considered for each choice, see docs/ARCHITECTURE.md. For visual flow diagrams, see docs/DIAGRAMS.md. For beginner-oriented explanations of the underlying concepts (CORS, OAuth Device Flow, OIDC, CloudFront, etc.), see docs/CONCEPTS.md.
npm install
npm run devOpen a PR adding a markdown file under content/<primary-tag>/<slug>.md. Required frontmatter:
---
title: "Short, scannable question"
tags: [react, performance]
difficulty: easy | medium | hard
---Body must contain # Question and # Answer H1 headings. Triple-backtick code fences get
syntax-highlighted at build time.
npm run lint:content # runs the same checks CI doesPush to main triggers .github/workflows/deploy.yml, which builds and aws s3 syncs the output.
GitHub Actions secrets:
AWS_ROLE_ARN,AWS_REGION,S3_BUCKET— requiredCLOUDFRONT_DISTRIBUTION_ID— optionalPUBLIC_GITHUB_CLIENT_ID— OAuth App client_id for the/proposepagePUBLIC_OAUTH_PROXY_URL— base URL of a CORS proxy for GitHub's OAuth Device Flow endpoints (GitHub'sgithub.com/login/...endpoints don't currently send CORS headers, so direct browser calls fail). A 30-line Cloudflare Worker is enough.