A powerful tool to prepare for GRE using Command Line Terminal
The word lists are provided by Vocabulary.com.
-
Clone this repository
git clone https://github.com/pycoder2000/GRE-Prep-Tool.git
-
Change directories
cd GRE-Prep-Tool
-
Install dependencies
pip install -r requirements.txt
-
⚠️ Change this date: Change this date to start using the Stats feature.# The day you start using this program in dd/mm/yyyy format StartDate = "dd/mm/yyyy"
-
Run Project
python main.py
Add alias to terminal (optional)
# Add the line below to your .bashrc or .zshrc file (only on MacOS) alias gre = 'python <Location to Folder>/GRE-Prep-Tool/main.py'
- Manhattan GRE Complete
- GRE Complete Vocabulary List
- Barrons 333
- 900+ Essential GRE Words
- Word Power Made Easy
- GRE101
- High Frequency Words
-
Vocabulary Addition Add vocabulary lists from vocabulary.com
- You can add as many vocab lists as you want. Just add the link and the scraper module will scrape the list and save it.
- Currently 7 lists are added. Details provided in Vocabulary Lists section above.
-
Learn from lists: Learn words from any of the provided lists
- An interactive learner is created to memorize the word meanings
- Store learnt vocabulary in TestedWords.json
-
Tests: Take tests to memorize the word meanings
- Supports 4 different types of tests:
- MCQ (Learnt Words)
- MCQ (Random Words)
- Written Test (Learnt Words)
- Written Test (Random Words)
- Also track the time taken to complete the tests.
- Supports 4 different types of tests:
-
Word Search: Search for any word in the vocabulary
- The vocabulary consists of all the words in all the lists.
-
Stats: Display the statistics of your performance
- You can look at your Streak Calendar which shows the dates when you practiced.
- Maintain streaks
- Get detailed analysis of the score and time taken for every test and compare your performance
📦 GRE-Prep-Tool
├── 📝 GREWordList.json # Contains the list of words categorized by their list names
├── 📝 TestedWords.json # Contains the list of words that you have learnt
├── 📝 TestScores.csv # Contains the test scores
├── 📝 requirements.txt # Contains the requirements needed for running this project
├── 📝 Stats.txt # Contains Streak information
├── 📝 vocabulary.json # Contains all the words in the vocabulary
└── 📝 main.py # Driver code for the program
- Fix Scraping from Vocabulary.com
- Add more tests
- Track time taken for tests
- Add statistics for tests
- Add daily streak
- Clean and refactor code
- Add feature to save test scores
- Ability to remove words from TestedWords.json
- Charts to compare performance
- Add serial revision
- Add finding definition for an individual word
- Create %tile score based on performance
- Universities available with the score range
Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request.
-
Fork the Project
-
Commit your Changes
git commit -m 'Add some Feature'
-
Push to the Branch
git push origin main
-
Open a Pull Request
This project is an highly modified and working version of this Github project.