Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/siddhant-vij/flashcard-app
Flashcard App built in Python using Tkinter - for effective learning on Periodic Table: Symbol, Name & Atomic Number.
https://github.com/siddhant-vij/flashcard-app
backend csv flashcard frontend gui periodic-table python tkinter
Last synced: 21 days ago
JSON representation
Flashcard App built in Python using Tkinter - for effective learning on Periodic Table: Symbol, Name & Atomic Number.
- Host: GitHub
- URL: https://github.com/siddhant-vij/flashcard-app
- Owner: siddhant-vij
- License: mit
- Created: 2023-11-17T16:01:29.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2023-11-17T16:13:06.000Z (about 1 year ago)
- Last Synced: 2024-11-16T04:17:47.016Z (3 months ago)
- Topics: backend, csv, flashcard, frontend, gui, periodic-table, python, tkinter
- Language: Python
- Homepage:
- Size: 52.7 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Flashcard App
A powerful tool for learning and practicing flashcards with boxed-spacing repetitions. It utilizes a CSV database in the backend to store and manage flashcard data. The app also incorporates a queue data structure ensuring that flashcards are presented in the most optimized way for effective learning.
1. [Features](#features)
1. [Installation](#installation)
1. [Contributing](#contributing)
1. [Future Improvements](#future-improvements)
1. [License](#license)## Features
- **Graphical User Interface (GUI)**: A user-friendly interface that provides an intuitive and interactive experience for users.
- **Flashcard Database**: Utilizes a CSV file to store and manage flashcard data, ensuring efficient retrieval and storage.
- **Queue Data Structure**: Implements a queue data structure to optimize the presentation of flashcards, ensuring an effective learning experience.
- **Boxed-Spacing Repetition Technique**: Utilizes a spaced repetition algorithm to present flashcards at optimal intervals, facilitating long-term memory retention.## Installation
- Clone the repository: `git clone https://github.com/siddhant-vij/Flashcard-App.git`
- Navigate to the project directory: `cd Flashcard-App`
- Install dependencies: `conda create --name flashcard-app --file requirements.txt`
- Activate the environment: `conda activate flashcard-app`
- Run the application: `python main.py`
- Edit the CSV file: `flashcards.csv`
- `Front` & `Back` for a topic: Periodic Table
- start with `1` for all the `Box` entries
- start with current date for `NextReviewDate`## Contributing
All contributions to this project are welcome. If you have suggestions or want to contribute to the codebase, please follow the steps below:
1. Fork the repository.
2. Create a new branch for your feature (`git checkout -b feature/YourFeature`).
3. Commit your changes (`git commit -am 'Add some feature'`).
4. Push to the branch (`git push origin feature/YourFeature`).
5. Create a new Pull Request.## Future Improvements
- **User Progress Tracking**: Implement a feature to track user progress and provide statistics on flashcard performance.
- **Multi-Language Support**: Add support for multiple languages, allowing users to practice flashcards in their preferred language.
- **Audio Pronunciation**: Incorporate audio pronunciation for flashcards, enhancing the learning experience.
- **Social Sharing**: Enable users to share flashcards or their progress on social media platforms.
- **Customizable Flashcard Design**: Allow users to customize the design and layout of their flashcards.
- **Cross-Platform Compatibility**: Ensure the application works seamlessly across different operating systems and devices.## License
Distributed under the MIT License. See [LICENSE](https://github.com/siddhant-vij/Flashcard-App/blob/main/LICENSE) for more information.