A modern, interactive coding challenge and typing practice app built with Next.js, TypeScript, and Radix UI.
Solve small challenges (e.g. βAdd two numbersβ) with instant execution and validation directly in the browser.
- Production: _Add your deployment URL here
- Preview (Vercel): Automatically generated on PRs
- Next.js 14+ (App Router)
- TypeScript
- Tailwind CSS (with PostCSS) + Radix UI
- ESLint (Next + TS rules)
- Node.js 18+ (20 recommended)
- npm / pnpm / yarn
- π§© Coding challenges with instant browser feedback
- β¨οΈ Typing practice with speed tracking
- π¨ Accessible, themeable UI (Radix + Tailwind)
- π Progress charts and stats
- π Security best practices (security headers,
robots.txt)
Install dependencies:
pnpm install
# or
npm ciRun the development server:
pnpm dev
# or
npm run devBuild for production:
pnpm build
pnpm startOpen http://localhost:3000 in your browser.
src/app/β Next.js App Router (pages, layouts, styles)src/components/β UI components (Radix + custom)src/hooks/β Custom React hookssrc/lib/β Utilities and helperspublic/β Static assets (images, sounds, robots.txt)
- Security headers via
next.config.ts:X-Frame-Options: SAMEORIGINX-Content-Type-Options: nosniffReferrer-Policy: strict-origin-when-cross-originPermissions-Policy(restricts unused APIs)
- robots.txt (in
public/) allows indexing. AddSitemap:when available for better SEO.
Package scripts available:
{
"dev": "next dev",
"build": "next build",
"start": "next start",
"lint": "next lint",
"typecheck": "tsc -p tsconfig.json --noEmit"
}Run with pnpm <script> or npm run <script>
- Create a branch:
git checkout -b feat/feature-name- Make your changes and run:
npm run lint && npm run typecheck- Push your branch:
git push origin feat/feature-name- Open a Pull Request π
MIT Β© kiritocode1
Improve your typing and coding skills with Blanky Type!