Skip to content

Latest commit

 

History

History
131 lines (90 loc) · 3.1 KB

File metadata and controls

131 lines (90 loc) · 3.1 KB

🧠 Language Learning SaaS

Click to see the demo


📋 Table of Contents

  1. 📌 Introduction
  2. ⚙️ Tech Stack
  3. Features
  4. Quick Start
  5. 🚧 Future Enhancements
  6. 🙌 Feedback & Contributions
  7. 📬 Contact

📌 Introduction

This is a language learning SaaS, I built from the ground up to help users learn new languages through interactive, gamified lessons.

The project contains modern technologies and best practices to deliver a clean, scalable architecture. From authentication and payment integration to lesson creation and progress tracking, every feature is custom-built to provide a seamless user experience.


⚙️ Tech Stack

  • Next.js
  • React
  • TypeScript
  • Tailwind CSS
  • Shadcn/UI
  • Stripe
  • React Admin
  • Neon Postresql
  • Drizzle
  • Clerk
  • Zustand

✨ Features

  • 🚀 Built with Next.js App Router
    Structured with the latest routing, layouts, and loading strategies.

  • 👤 Authentication via Clerk
    Secure, production-ready user management.

  • 🧠 Interactive Learning System
    Users can go through dynamic lessons that include different question types and instant feedback.

  • 🛠️ Admin Dashboard with React Admin
    Fully functional dashboard for managing courses, content, and user data.

  • 💳 Stripe Integration
    Payments are integrated to unlock premium features or future subscriptions.

  • 🧾 Type-Safe ORM with Drizzle
    Clean, type-safe queries connected to a modern PostgreSQL setup on Neon.

  • Instant Deployment via Vercel
    Fast CI/CD pipeline and global hosting for seamless delivery.


⚡ Quick Start

1. Clone the repository:

git clone https://github.com/programmersEmperor/Learning-SaaS.git
cd Learning-SaaS

2. Install dependencies:

npm install

3. Configure environment variables:

Create a .env.local file and include the following variables:

NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
CLERK_SECRET_KEY=
NEXT_PUBLIC_CLERK_SIGN_IN_FORCE_REDIRECT_URL=
NEXT_PUBLIC_CLERK_SIGN_UP_FORCE_REDIRECT_URL=
NEON_DATABASE_URL=
STRIPE_API_KEY=
STRIPE_WEBHOOK_SECRET=
NEXT_PUBLIC_API_URL=

4. Start the development server:

npm run dev

Then open http://localhost:3000 in your browser.


🚧 Future Enhancements

  • Personalized learning paths based on user performance
  • Streak tracking and gamification
  • Localization support
  • E2E and unit testing coverage

🙌 Feedback & Contributions

This is a solo-built project created from scratch to demonstrate full-stack skills and product thinking. Suggestions and contributions are always welcome!


📬 Contact

Want to connect or collaborate? Reach out via :