This is a modern, intuitive, and user-friendly spaced repetition app using AI
- Flashcard creation and management
- Spaced repetition algorithm for optimized memory retention
- AI-powered learning assistance with explanations and context
- Various study modes (flashcards, learn, write, spell, test, match)
- Personalized learning experience with adaptive recommendations
- Collaboration and sharing of flashcard decks
- Impeccable UI/UX with a clean, modern, and intuitive design
- Efficient and responsive app performance
- Front-end: React, Redux, Material-UI
- Back-end: Node.js, Express.js, TypeScript
- Database: SQLite (sqlite3 library)
- AI Integration: Hugging Face Transformers
To run the app locally, follow these steps:
-
Clone the repository:
git clone https://github.com/your-username/spaced-repetition-app.git
-
Install dependencies:
cd spaced-repetition-app npm install
-
Start the development server:
bun server/run.ts
-
Open your browser and visit
http://localhost:8001
to access the app.
GET /api/flashcards
- Retrieve all flashcardsPOST /api/flashcards
- Create a new flashcardGET /api/flashcards/:id
- Retrieve a specific flashcard by IDPUT /api/flashcards/:id
- Update a specific flashcard by IDDELETE /api/flashcards/:id
- Delete a specific flashcard by IDGET /api/decks
- Retrieve all flashcard decksPOST /api/decks
- Create a new flashcard deckGET /api/decks/:id
- Retrieve a specific flashcard deck by IDPUT /api/decks/:id
- Update a specific flashcard deck by IDDELETE /api/decks/:id
- Delete a specific flashcard deck by IDPOST /api/ai/explain
- Get AI-generated explanations for a flashcardPOST /api/ai/suggest
- Get AI-powered suggestions for additional learning resources
The app uses SQLite as the database for storing flashcards and decks. The server creates the necessary tables and handles all database operations.
Socket.io is not used in this app.
Contributions are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.