Skip to content

Revolutionize your SAT exam preparation with our cutting-edge AI-powered app that provides personalized study plans, comprehensive practice tests, and advanced performance analytics

todo-labs/brainwave

Repository files navigation

Contributors Forks Stargazers Issues LinkedIn


Table of Contents
  1. About The Project
  2. Getting Started
  3. Roadmap
  4. Contributing
  5. License
  6. Contact

About The Project

Product Name Screen Shot

Introducing Brainwave, an innovative quiz platform that harnesses the capabilities of OpenAI to generate real-time practice exams. Our vision is to establish an accessible and engaging hub for learning and self-challenge through quizzes. By capitalizing on OpenAI's potential, we strive to offer a distinctive and dynamic learning journey that adjusts to individual users' knowledge levels. With Brainwave, users can explore quizzes in diverse subjects, obtaining instant performance feedback for an enriched educational experience.

(back to top)

🌎 New Languages Supported

We're excited to announce that we now support multiple languages! Thanks to the power of next-i18next & Open Ai, we've added E2E support for the following languages:

  • 🇦🇪 Arabic
  • 🇨🇳 Chinese
  • 🇩🇪 German
  • 🇺🇸 English (default)
  • 🇪🇸 Spanish
  • 🇫🇷 French
  • 🇮🇳 Hindi
  • 🇮🇹 Italian
  • 🇯🇵 Japanese
  • 🇰🇷 Korean
  • 🇳🇬 Yorùbá
  • 🇵🇹 Portuguese
  • 🇷🇺 Russian

To switch to a different language, simply click on the language selector on the profile page and choose your preferred language. We hope this new feature makes Brainwave more accessible and user-friendly for everyone!

Built With

Features

  • Email Magic Link Authentication
  • Quiz Generation
  • Results Breakdown

What I Learned ?

  • How to use NextAuth.js to implement authentication and authorization
  • Langchain API integration
  • How to use tRPC to implement a GraphQL-like API
  • How to use Tailwind CSS & Radix UI to build a responsive and engaging UI
  • How to setup an embedding vector database

(back to top)

🧩 Integrations

Mixpanel

we prioritize data-driven decision-making to enhance the user experience and continuously improve our services. To achieve this, we have integrated Mixpanel, a powerful analytics and user engagement platform, into our application.

Sentry

We have integrated Sentry, an open-source error tracking tool, into our application using Sentry's Next.js SDK. This allows us to monitor and fix crashes in real-time, as well as monitor our application's performance and identify potential bottlenecks. Sentry's session replay feature also allows us to see exactly what our users are experiencing, which helps us to improve our application's usability.

Prerequisites

To get started with Brainwave, you will need to set up your development environment. You will need the following tools:

Installation

  1. Get an Open AI API Key at Open AI Platform
  2. Clone the repo
     git clone https://github.com/todo-labs/brainwave.git
  3. Install NPM packages
     pnpm i
  4. Copy over your env file
     cp .env.example .env
  5. Push the prisma schema to your database
     pnpm db:push
  6. Run the development server
     pnpm dev
  7. Open http://localhost:3000 with your browser to see the result.

(back to top)

Roadmap

  • Setup the vector database
    • Pre load a dataset of past SAT Practice Exams
    • Setup a cron job to update the database with new exams
    • Link vector db to quiz generation query
  • Enhance the quiz generation procedure
    • Add support for different question types
  • Enhance results breakdown UI and functionality
  • Add a leader board and ranking system
  • Enhance the mobile experience

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'feat(scope): Add some AmazingFeature (fixes #123)')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

David Ojo - @conceptcodes - [email protected]

Project Link: https://brainwave.quest

(back to top)

About

Revolutionize your SAT exam preparation with our cutting-edge AI-powered app that provides personalized study plans, comprehensive practice tests, and advanced performance analytics

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published