├── .env.example ├── .eslintrc.json ├── .github ├── ISSUE_TEMPLATE │ └── bug_report.yml ├── PR_TEMPLATE │ └── PULL_REQUEST_TEMPLATE.md └── workflows │ └── node.js.yml ├── .gitignore ├── README.md ├── components.json ├── next.config.mjs ├── package.json ├── postcss.config.mjs ├── public └── f1.jpg ├── src ├── app │ ├── (auth) │ │ ├── login │ │ │ └── page.tsx │ │ └── signup │ │ │ └── page.tsx │ ├── (marketing) │ │ ├── about │ │ │ └── page.tsx │ │ ├── contact │ │ │ └── page.tsx │ │ ├── faq │ │ │ └── page.tsx │ │ ├── privacy │ │ │ └── page.tsx │ │ └── terms │ │ │ └── page.tsx │ ├── (pages) │ │ ├── [username] │ │ │ └── page.tsx │ │ ├── leaderboard │ │ │ └── page.tsx │ │ ├── leetcode-190 │ │ │ └── page.tsx │ │ ├── lobby │ │ │ └── page.tsx │ │ ├── playground │ │ │ └── page.tsx │ │ ├── profile │ │ │ └── page.tsx │ │ ├── status │ │ │ └── page.tsx │ │ └── subscription │ │ │ └── page.tsx │ ├── api │ │ ├── leaderboard │ │ │ └── route.ts │ │ ├── login │ │ │ └── route.ts │ │ ├── logout │ │ │ └── route.ts │ │ ├── orders │ │ │ ├── route.ts │ │ │ └── user │ │ │ │ └── route.ts │ │ ├── player-profile │ │ │ └── route.ts │ │ ├── profile │ │ │ └── route.ts │ │ ├── signup │ │ │ └── route.ts │ │ ├── store-result │ │ │ └── route.ts │ │ ├── verify-payment │ │ │ └── route.ts │ │ └── webhooks │ │ │ └── razorpay │ │ │ └── route.ts │ ├── favicon.ico │ ├── fonts │ │ ├── GeistMonoVF.woff │ │ └── GeistVF.woff │ ├── globals.css │ ├── layout.tsx │ └── page.tsx ├── components │ ├── custom │ │ ├── AnimatedTooltip.tsx │ │ ├── Footer.tsx │ │ ├── Hero.tsx │ │ ├── HeroSection.tsx │ │ ├── ModeToggle.tsx │ │ └── Navbar.tsx │ ├── theme-providers.tsx │ └── ui │ │ ├── Spotlight.tsx │ │ ├── accordion.tsx │ │ ├── alert.tsx │ │ ├── animated-tooltip.tsx │ │ ├── avatar.tsx │ │ ├── badge.tsx │ │ ├── button.tsx │ │ ├── card.tsx │ │ ├── checkbox.tsx │ │ ├── container-scroll-animation.tsx │ │ ├── dialog.tsx │ │ ├── dropdown-menu.tsx │ │ ├── input.tsx │ │ ├── label.tsx │ │ ├── progress.tsx │ │ ├── select.tsx │ │ ├── sheet.tsx │ │ ├── skeleton.tsx │ │ ├── table.tsx │ │ ├── textarea.tsx │ │ └── tooltip.tsx ├── data │ ├── pattern.ts │ └── sampleParagraphs.ts ├── dbconfig │ └── dbconfig.ts ├── lib │ ├── getDataFromToken.ts │ ├── ratelimit.ts │ └── utils.ts ├── models │ ├── order.model.ts │ └── user.model.ts └── store │ └── useStore.ts ├── tailwind.config.ts └── tsconfig.json /.env.example: -------------------------------------------------------------------------------- 1 | MONGODB_URL= 2 | TOKEN_SECRET= -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/.eslintrc.json -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/.github/ISSUE_TEMPLATE/bug_report.yml -------------------------------------------------------------------------------- /.github/PR_TEMPLATE/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/.github/PR_TEMPLATE/PULL_REQUEST_TEMPLATE.md -------------------------------------------------------------------------------- /.github/workflows/node.js.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/.github/workflows/node.js.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/README.md -------------------------------------------------------------------------------- /components.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/components.json -------------------------------------------------------------------------------- /next.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/next.config.mjs -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/package.json -------------------------------------------------------------------------------- /postcss.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/postcss.config.mjs -------------------------------------------------------------------------------- /public/f1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/public/f1.jpg -------------------------------------------------------------------------------- /src/app/(auth)/login/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(auth)/login/page.tsx -------------------------------------------------------------------------------- /src/app/(auth)/signup/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(auth)/signup/page.tsx -------------------------------------------------------------------------------- /src/app/(marketing)/about/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(marketing)/about/page.tsx -------------------------------------------------------------------------------- /src/app/(marketing)/contact/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(marketing)/contact/page.tsx -------------------------------------------------------------------------------- /src/app/(marketing)/faq/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(marketing)/faq/page.tsx -------------------------------------------------------------------------------- /src/app/(marketing)/privacy/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(marketing)/privacy/page.tsx -------------------------------------------------------------------------------- /src/app/(marketing)/terms/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(marketing)/terms/page.tsx -------------------------------------------------------------------------------- /src/app/(pages)/[username]/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(pages)/[username]/page.tsx -------------------------------------------------------------------------------- /src/app/(pages)/leaderboard/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(pages)/leaderboard/page.tsx -------------------------------------------------------------------------------- /src/app/(pages)/leetcode-190/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(pages)/leetcode-190/page.tsx -------------------------------------------------------------------------------- /src/app/(pages)/lobby/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(pages)/lobby/page.tsx -------------------------------------------------------------------------------- /src/app/(pages)/playground/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(pages)/playground/page.tsx -------------------------------------------------------------------------------- /src/app/(pages)/profile/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(pages)/profile/page.tsx -------------------------------------------------------------------------------- /src/app/(pages)/status/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(pages)/status/page.tsx -------------------------------------------------------------------------------- /src/app/(pages)/subscription/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/(pages)/subscription/page.tsx -------------------------------------------------------------------------------- /src/app/api/leaderboard/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/api/leaderboard/route.ts -------------------------------------------------------------------------------- /src/app/api/login/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/api/login/route.ts -------------------------------------------------------------------------------- /src/app/api/logout/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/api/logout/route.ts -------------------------------------------------------------------------------- /src/app/api/orders/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/api/orders/route.ts -------------------------------------------------------------------------------- /src/app/api/orders/user/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/api/orders/user/route.ts -------------------------------------------------------------------------------- /src/app/api/player-profile/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/api/player-profile/route.ts -------------------------------------------------------------------------------- /src/app/api/profile/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/api/profile/route.ts -------------------------------------------------------------------------------- /src/app/api/signup/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/api/signup/route.ts -------------------------------------------------------------------------------- /src/app/api/store-result/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/api/store-result/route.ts -------------------------------------------------------------------------------- /src/app/api/verify-payment/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/api/verify-payment/route.ts -------------------------------------------------------------------------------- /src/app/api/webhooks/razorpay/route.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/api/webhooks/razorpay/route.ts -------------------------------------------------------------------------------- /src/app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/favicon.ico -------------------------------------------------------------------------------- /src/app/fonts/GeistMonoVF.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/fonts/GeistMonoVF.woff -------------------------------------------------------------------------------- /src/app/fonts/GeistVF.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/fonts/GeistVF.woff -------------------------------------------------------------------------------- /src/app/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/globals.css -------------------------------------------------------------------------------- /src/app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/layout.tsx -------------------------------------------------------------------------------- /src/app/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/app/page.tsx -------------------------------------------------------------------------------- /src/components/custom/AnimatedTooltip.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/custom/AnimatedTooltip.tsx -------------------------------------------------------------------------------- /src/components/custom/Footer.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/custom/Footer.tsx -------------------------------------------------------------------------------- /src/components/custom/Hero.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/custom/Hero.tsx -------------------------------------------------------------------------------- /src/components/custom/HeroSection.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/custom/HeroSection.tsx -------------------------------------------------------------------------------- /src/components/custom/ModeToggle.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/custom/ModeToggle.tsx -------------------------------------------------------------------------------- /src/components/custom/Navbar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/custom/Navbar.tsx -------------------------------------------------------------------------------- /src/components/theme-providers.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/theme-providers.tsx -------------------------------------------------------------------------------- /src/components/ui/Spotlight.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/Spotlight.tsx -------------------------------------------------------------------------------- /src/components/ui/accordion.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/accordion.tsx -------------------------------------------------------------------------------- /src/components/ui/alert.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/alert.tsx -------------------------------------------------------------------------------- /src/components/ui/animated-tooltip.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/animated-tooltip.tsx -------------------------------------------------------------------------------- /src/components/ui/avatar.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/avatar.tsx -------------------------------------------------------------------------------- /src/components/ui/badge.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/badge.tsx -------------------------------------------------------------------------------- /src/components/ui/button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/button.tsx -------------------------------------------------------------------------------- /src/components/ui/card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/card.tsx -------------------------------------------------------------------------------- /src/components/ui/checkbox.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/checkbox.tsx -------------------------------------------------------------------------------- /src/components/ui/container-scroll-animation.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/container-scroll-animation.tsx -------------------------------------------------------------------------------- /src/components/ui/dialog.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/dialog.tsx -------------------------------------------------------------------------------- /src/components/ui/dropdown-menu.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/dropdown-menu.tsx -------------------------------------------------------------------------------- /src/components/ui/input.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/input.tsx -------------------------------------------------------------------------------- /src/components/ui/label.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/label.tsx -------------------------------------------------------------------------------- /src/components/ui/progress.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/progress.tsx -------------------------------------------------------------------------------- /src/components/ui/select.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/select.tsx -------------------------------------------------------------------------------- /src/components/ui/sheet.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/sheet.tsx -------------------------------------------------------------------------------- /src/components/ui/skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/skeleton.tsx -------------------------------------------------------------------------------- /src/components/ui/table.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/table.tsx -------------------------------------------------------------------------------- /src/components/ui/textarea.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/textarea.tsx -------------------------------------------------------------------------------- /src/components/ui/tooltip.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/components/ui/tooltip.tsx -------------------------------------------------------------------------------- /src/data/pattern.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/data/pattern.ts -------------------------------------------------------------------------------- /src/data/sampleParagraphs.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/data/sampleParagraphs.ts -------------------------------------------------------------------------------- /src/dbconfig/dbconfig.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/dbconfig/dbconfig.ts -------------------------------------------------------------------------------- /src/lib/getDataFromToken.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/lib/getDataFromToken.ts -------------------------------------------------------------------------------- /src/lib/ratelimit.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/lib/ratelimit.ts -------------------------------------------------------------------------------- /src/lib/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/lib/utils.ts -------------------------------------------------------------------------------- /src/models/order.model.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/models/order.model.ts -------------------------------------------------------------------------------- /src/models/user.model.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/models/user.model.ts -------------------------------------------------------------------------------- /src/store/useStore.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/src/store/useStore.ts -------------------------------------------------------------------------------- /tailwind.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/tailwind.config.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/itzamanjain/TypeArena/HEAD/tsconfig.json --------------------------------------------------------------------------------