This app aims to create a modern web-based application designed to support effective learning through flashcards. Users can create personalized quizzes, set learning goals and track their progress. The app focuses on providing a user-friendly interface and includes features for importing and exporting flashcards, making it a versatile tool for learners.
The app is developed as a web-based solution accessible via browser on both desktop and mobile devices. While the app requires an internet connection, this approach ensures platform independence and seamless access across devices. Offline functionality is not supported.
This application is ideal for students, professionals and lifelong learners aiming to enhance knowledge through structured, interactive and personalized study methods.
- Flashcard Management: Create, organize and edit flashcards with ease. Cards can be categorised, searched and filtered to maintain clarity even with large collections.
- Interactive Quiz Modes:
Test your knowledge through various formats, including:
- Mutliple-Choice
- Single-Choice
- True/False questions
- Spaced Repetition: OPtimize lerning with an algorithm that schedules review sessions based on individual progress, promoting long-term memory retention.
- Gamification: Stay motivated with badges, leaderboards and progress tracking.
- Learning Analytics: Visualize your progress with charts and reports to identify areas needing improvement. Set learning goals and monitor your achievements.
Its neccessary to install needed node_modules separately for the server and client. Follow the instructions of your IDE to do so or else execute the following code snippets:
cd server
npm install
cd ..
cd client
npm install
cd ..
Process variables such as API keys and DB connection variables should be stored in server/.env in the format
MONGO_URI=mongodb
[email protected]
EMAIL_PASSWORD=password
SESSION_SECRET=secret
JWT_SECRET=secret
whereas secret represents the JWT_SECRET key. Make sure not to push your .env file to github!
npm run server
npm run client