Skip to content

Ionfinisher/languageninja

Repository files navigation

Language Ninja 🥋🌍

Learn languages faster, smarter, and with a lot more fun!

Language Ninja is an AI-powered web app designed to make language learning exciting and effective. By combining cutting-edge AI with gamified experiences, it transforms traditional learning into an engaging adventure.


Table of Contents


Features

Language Ninja provides:

  • AI-Powered Personalized Lesson: Quick and precise lesson generated from the user input with context.
  • Interactive Challenges: Quiz generated by AI based on the lesson generated to test your knowledge.
  • Cultural Immersion: Learn idioms and cultural nuances through generated lessons.

Demo

🌐 Check out the live app: Language Ninja Demo
🎥 Watch a quick walkthrough: Demo Video


Technologies Used

  • Frontend: React, Shadcn/UI and AceternityUI
  • Backend: Nextjs, Hanko is the auth provider
  • Database: Firebase Firestore
  • AI Models: Integrated SambaNova Llama-3.1-8B-Instruct and Llama-3.1-70B-Instruct for lessons and quizzes generation and contextual analyzis

How It Works

  1. Sign Up: Start by signing up with an email.
  2. Create a course: Enter a prompt Ex: I'm going on a trip to Japan for my honey moon. And let the training begin.
  3. Take the lesson: Learn the basics quickly with the personnalized course generated.
  4. Test your knowledge: Take the quiz from the course and improve in a fun way.

Getting Started

Prerequisites

  • Node.js and npm installed
  • SambaNova AI account with a valid API key
  • Hanko account with a project configured with a valid URL
  • Firebase account with a project using Firestore

Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/languageninja.git
    cd languageninja
  2. Install dependencies:

    npm install
  3. Set up the database:

    • Add a web app to your firebase project and download the firebase config file.
    • Replace the content in /src/config/firebaseConfig.ts with the content in your config file.
  4. Configure environment variables:
    Create a .env.local file in the root directory with the following:

    NEXT_PUBLIC_HANKO_API_URL=your_hanko_public_key
    BASE_URL=https://api.sambanova.ai/v1
    SAMBANOVA_API_KEY=your_sambanova_api_key
  5. Start the development server:

    npm run dev

    Visit http://localhost:3000 to explore the app!


Future Plans

  • Add a mobile app version for iOS and Android.
  • Expand the library of languages supported.
  • Introduce AR-based language learning for real-world scenarios.
  • Build community features for connecting with native speakers.

Happy learning with Language Ninja! 🚀

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published