github

AntonioErdeljac / next14-duolingo-clone

  • понСдСльник, 18 ΠΌΠ°Ρ€Ρ‚Π° 2024β€―Π³. Π² 00:00:03
https://github.com/AntonioErdeljac/next14-duolingo-clone



Build a Duolingo Clone With Nextjs, React, Drizzle, Stripe (2024)

Duolingo thumb (1)

This is a repository for a "Build a Duolingo Clone With Nextjs, React, Drizzle, Stripe (2024)" youtube video.

VIDEO TUTORIAL

Key Features:

  • 🌐 Next.js 14 & server actions
  • πŸ—£ AI Voices using Elevenlabs AI
  • 🎨 Beautiful component system using Shadcn UI
  • 🎭 Amazing characters thanks to KenneyNL
  • πŸ” Auth using Clerk
  • πŸ”Š Sound effects
  • ❀️ Hearts system
  • 🌟 Points / XP system
  • πŸ’” No hearts left popup
  • πŸšͺ Exit confirmation popup
  • πŸ”„ Practice old lessons to regain hearts
  • πŸ† Leaderboard
  • πŸ—Ί Quests milestones
  • πŸ› Shop system to exchange points with hearts
  • πŸ’³ Pro tier for unlimited hearts using Stripe
  • 🏠 Landing page
  • πŸ“Š Admin dashboard React Admin
  • 🌧 ORM using DrizzleORM
  • πŸ’Ύ PostgresDB using NeonDB
  • πŸš€ Deployment on Vercel
  • πŸ“± Mobile responsiveness

Prerequisites

Node version 14.x

Cloning the repository

git clone https://github.com/AntonioErdeljac/next14-duolingo-clone.git

Install packages

npm i

Setup .env file

NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=""
CLERK_SECRET_KEY=""
DATABASE_URL="postgresql://..."
STRIPE_API_KEY=""
NEXT_PUBLIC_APP_URL="http://localhost:3000"
STRIPE_WEBHOOK_SECRET=""

Setup Drizzle ORM

npm run db:push

Seed the app

npm run db:seed

or

npm run db:prod

Start the app

npm run dev