Flashcards App is a dynamic and user-friendly Django-based application designed to enhance your study sessions. This app allows you to create, manage, and interact with flashcards, track your progress, and visualize additional study materials.
-
User Authentication:
- Secure login and registration system.
- User-specific data management for a personalized experience.
-
Flashcards Management:
- Create and organize flashcards by categories.
- Edit, delete, or view your flashcards with ease.
-
Challenge Mode:
- Test your knowledge with challenges.
- Track progress based on correct and incorrect answers.
-
PDF Viewer:
- Upload and view PDF study materials directly in the app.
-
Progress Tracking:
- Monitor your performance and improve with detailed analytics.
Follow these steps to set up the project locally:
- Python 3.8 or higher
- Django 4.0 or higher
- pip
-
Clone the repository:
git clone https://github.com/your-username/flashcards-app.git cd flashcards-app
-
Create a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Run migrations:
python manage.py makemigrations python manage.py migrate
-
Create a superuser:
python manage.py createsuperuser
-
Start the development server:
python manage.py runserver
-
Access the app: Open your browser and navigate to
http://127.0.0.1:8000/
.
- Register or log in to your account.
- Create flashcards by specifying categories and content.
- Engage with your flashcards through challenge mode.
- Upload and view additional study materials in PDF format.
- Track your progress to identify strengths and areas for improvement.
flashcards-app/
├── flashcards/ # Main app for managing flashcards
├── accounts/ # User authentication system
├── static/ # Static files (CSS, JS, Images)
├── templates/ # HTML templates
├── media/ # Uploaded files (PDFs)
├── manage.py # Django's management script
└── requirements.txt # Python dependencies
Contributions are welcome! Follow these steps to contribute:
- Fork the repository.
- Create a new branch:
git checkout -b feature/your-feature
. - Commit your changes:
git commit -m 'Add a feature'
. - Push to the branch:
git push origin feature/your-feature
. - Submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
- Django for the web framework.
- PDF.js for the PDF viewer integration.
For any questions or suggestions, feel free to open an issue or reach out via email at your-email@example.com
.
Leave a star ⭐ on the repository if you find it useful!