FlashGenius is a modern web application that uses AI to generate educational flashcards on any topic. Perfect for students, lifelong learners, and curious minds who want to enhance their learning experience.
- AI-Powered Flashcard Generation: Generate high-quality flashcards on any topic using OpenAI's GPT-4o
- Customizable Difficulty Levels: Choose between beginner, intermediate, and advanced difficulty
- Interactive Flashcard Interface: Flip cards with smooth animations to reveal answers
- Progress Tracking: Monitor your progress as you work through a set of flashcards
- Responsive Design: Works seamlessly on desktop and mobile devices
- Frontend: React with TypeScript, Vite, Tailwind CSS, Framer Motion
- AI Integration: Mastra server with OpenAI Model
- Routing: React Router
- Type Safety: TypeScript with strict mode enabled
- Node.js (v20 or later)
- npm or pnpm
- OpenAI API key
-
Clone the repository
cd flashgenius
-
Install dependencies
npm install
-
Create a
.env
file in the root directory and add your OpenAI API keyOPENAI_API_KEY=your_openai_api_key_here
-
Start the Mastra server (for AI functionality)
npm run mastra:dev
-
In a separate terminal, start the development server
npm run dev
-
Open your browser and navigate to
http://localhost:5173
- Navigate to the "Create" page
- Enter a topic you want to learn about
- Select the difficulty level and number of cards
- Click "Generate Flashcards"
- Use the flashcard interface to study the generated cards
npm run dev
- Start the development servernpm run build
- Build the application for productionnpm run typecheck
- Run TypeScript type checkingnpm run lint
- Run ESLintnpm run preview
- Preview the production build locallynpm run mastra:dev
- Start the Mastra AI server
MIT
- OpenAI for the GPT-4o model
- Mastra for the AI agent framework
- Tailwind CSS for the styling framework
- Framer Motion for animations