This tool allows you to rank and filter CVs using a domain-specific language (DSL) for command parsing.
- Python 3.13.3: Download here
- ANTLR: Download here
-
Clone this repository:
git clone https://github.com/quynhanhhoang572004/CV-Ranking.git
-
Download
pip install antlr4-python3-runtime
pip install streamlit- Try Out The Features a. Generate CVs
python generator/CVGenerator.pyb. Compile and test the grammar: Suppose the ANTLR jar is saved in YOUR_ANTLR_JAR_PATH in your local computer.
cd grammars
java -jar YOUR_ANTLR_JAR_PATH -Dlanguage=Python3 -o ../CompiledFiles JD.g4
cd ..
python runJD.py testc. Generate the Visitor classes
java -jar YOUR_ANTLR_JAR_PATH -Dlanguage=Python3 -o ../parse -visitor JD.g4(View current validator class in parse/JDValidator.py)
d. Run the visitor
python -m tests.test_validatore. Run the UI
streamlit run UI/read_cv.py list all CVs for job backend developer show CV with gpa: >= 3.5 show top 5 best CV for ai engineer jd input (read JD.txt)