FlashGenie is a user-friendly web app that allows users to input text, documents, or images and converts them into interactive flashcards. Designed to enhance learning and retention, FlashGenie provides an adaptive learning experience to optimize memorization.
- Input Content: Users can input text, upload documents, or add images as content for flashcard generation.
- Flashcard Generation: FlashGenie uses Cloudflare Workers AI (Mistral 7B) for text-to-flashcard generation and Google Gemini 1.5 Flash for image-based flashcard generation.
- Interactive MCQs: The generated flashcards are presented in an engaging multiple-choice question (MCQ) format.
- Image-to-Flashcard: Users can upload images, and FlashGenie will generate flashcards using Google Gemini 1.5 Flash for image processing.
- Error Handling: The app includes robust error handling for API responses, including managing malformed JSON outputs.
- User-Friendly Interface: The app features an intuitive and easy-to-navigate interface.
- Mobile Compatibility: The web app is responsive and works on mobile devices for on-the-go learning.
- Collaboration: Users can share flashcards and collaborate with peers.
- Frontend: Vite, Tailwind CSS, Framer Motion, Magic UI, ShadCN
- Backend: Cloudflare Workers (Mistral 7B for text processing, Google Gemini 1.5 Flash for image processing)
- Server: Vercel for frontend deployment, Cloudflare Workers for serverless backend
- External API: Cloudflare Workers AI for text-based flashcard generation, Google Gemini 1.5 Flash for image-based flashcards
-
Clone the repository to your local machine.
git clone https://github.com/Panth1823/FlashGenie.git
-
Navigate to the project directory.
cd FlashGenie
-
Install the required dependencies for both the server and client.
# For the server cd ./server npm install # For the client cd ./client npm install
-
Start the server.
npm run dev or wrangler dev
-
Start the client in development mode.
npm run dev
The server should now be running, and the client can be accessed at http://localhost:5173
.
- Access the app through the provided URL or locally at
http://localhost:5173
. - Input your desired content in the provided text area or upload an image.
- Click the "Generate" button to convert the input content into interactive flashcards or quizzes.
We welcome contributions from the community! To contribute to FlashGenie, follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Implement your changes.
- Test your changes to ensure they work as expected.
- Submit a pull request to the main repository.