{"id":24527219,"url":"https://github.com/Ztrimus/ResumeFlow","last_synced_at":"2025-10-03T04:30:36.082Z","repository":{"id":216425898,"uuid":"712626775","full_name":"Ztrimus/ResumeFlow","owner":"Ztrimus","description":"Simplify and improve the job hunting experience by integrating LLMs to automate tasks such as resume and cover letter generation, as well as application submission, saving users time and effort.","archived":false,"fork":false,"pushed_at":"2024-10-06T01:53:29.000Z","size":81606,"stargazers_count":124,"open_issues_count":6,"forks_count":63,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-01-22T06:16:59.299Z","etag":null,"topics":["autoapply","automation","jobsearch","jobseeker","llm","ml","pipeline","prompt","prompt-engineering","python"],"latest_commit_sha":null,"homepage":"https://dl.acm.org/doi/10.1145/3626772.3657680","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ztrimus.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-10-31T21:11:20.000Z","updated_at":"2025-01-21T20:01:14.000Z","dependencies_parsed_at":"2024-01-17T03:43:55.331Z","dependency_job_id":"23880417-4e32-4ff0-9a4c-bcf7b3eed835","html_url":"https://github.com/Ztrimus/ResumeFlow","commit_stats":null,"previous_names":["ztrimus/job-llm","ztrimus/resumeflow"],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ztrimus%2FResumeFlow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ztrimus%2FResumeFlow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ztrimus%2FResumeFlow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ztrimus%2FResumeFlow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ztrimus","download_url":"https://codeload.github.com/Ztrimus/ResumeFlow/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235069309,"owners_count":18930938,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["autoapply","automation","jobsearch","jobseeker","llm","ml","pipeline","prompt","prompt-engineering","python"],"created_at":"2025-01-22T06:17:12.109Z","updated_at":"2025-10-03T04:30:27.458Z","avatar_url":"https://github.com/Ztrimus.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ResumeFlow: An LLM-facilitated Pipeline for Personalized Resume Generation and Refinement \n\n[![Demo Page](https://img.shields.io/badge/Project-Demo-FF4B4B?logo=streamlit)](https://resumeflow.streamlit.app/)\n[![ACM Digital Library](https://img.shields.io/badge/ACM-0085CA?logo=acm\u0026logoColor=fff\u0026style=flat)](https://dl.acm.org/doi/10.1145/3626772.3657680)\n[![arxiv paper](https://img.shields.io/badge/arXiv-Paper-B31B1B?logo=arxiv)](https://arxiv.org/abs/2402.06221)\n[![PyPI Latest Release](https://img.shields.io/pypi/v/zlm.svg?label=PyPI\u0026color=3775A9\u0026logo=pypi)](https://pypi.org/project/zlm/)\n[![PyPI Downloads](https://img.shields.io/pypi/dm/zlm.svg?label=PyPI%20downloads\u0026color=blueviolet\u0026target=blank)](https://pypi.org/project/zlm/)\n[![GitHub issues open](https://img.shields.io/github/issues/Ztrimus/job-llm.svg?color=orange\u0026label=Issues\u0026logo=github)](https://github.com/Ztrimus/job-llm/issues)\n[![License: MIT](https://img.shields.io/badge/License-MIT-success.svg?logo)](https://github.com/Ztrimus/job-llm/blob/main/LICENSE)\n\n[![Click here to see image of \"Auto Job Aligned Personalized Resume Generation Pipeline\"](https://github.com/Ztrimus/job-llm/blob/main/resources/auto_job_apply_workflow.jpg)](https://github.com/Ztrimus/job-llm/blob/main/resources/auto_job_apply_workflow.jpg)\n\u003cbr\u003eFor **Video Demonstration** visit the YouTube link: https://youtu.be/Agl7ugyu1N4\n\nProject can be:\n - Access as a **Web Tool** from https://resumeflow.streamlit.app/\n - Install as a **Python Package** from https://pypi.org/project/zlm/\n - Download as **Source Code** from https://github.com/Ztrimus/job-llm.git\n \nAll other known bugs, fixes, feedbacks, and feature requests can be reported on the [GitHub issues](https://github.com/Ztrimus/job-llm/issues) page.\n\n**Empower others, just like they helped you!** Contribute to this open source project \u0026 make a difference. ✨ *Create a branch, improve the code, \u0026 raise a pull request!*\n\n#### Author \u0026 Contributor List\n\n - [Saurabh Zinjad](https://linkedin.com/in/saurabhzinjad) | [Ztrimus](https://github.com/Ztrimus) | szinjad@asu.edu\n - [Amey Bhilegaonkar](https://www.linkedin.com/in/amey-bhilegaonkar) | [ameygoes](https://github.com/ameygoes) | abhilega@asu.edu\n - [Amrita Bhattacharjee](https://www.linkedin.com/in/amritabh) | [Amritabh](https://github.com/Amritabh) | abhatt43@asu.edu\n\n## 1. Introduction:\n### 1.1. Our Proposal\nWe're aiming to create a automated system that makes applying for jobs a breeze. Job hunting has many stages, and we see a chance to automate things and use LLM (Language Model) to make it even smoother. We're looking at different ways, both the usual and some new ideas, to integrate LLM into the job application process. The goal is to reduce how much you have to do and let LLM do its thing, making the whole process easier for you.\n### 1.2. References\n- [40+ AWESOME RESUME STATISTICS [2023]: WHAT JOB SEEKERS NEED TO KNOW](https://www.zippia.com/advice/resume-statistics/)\n### 1.3. Refer to this [Paper](https://arxiv.org/abs/2402.06221) for more details.\n\n## 2. Setup, Installation and Usage\n### 2.1. Prerequisites\n - OS : Linux, Mac\n - Python : 3.11.6 and above\n - LLM API key: [OpenAI](https://platform.openai.com/account/api-keys) OR [Gemini Pro](https://ai.google.dev/)\n\n### 2.2. Package Installation - Use as Library\n\n```bash\npip install zlm\n```\n\n - Usage\n\n```python\nfrom zlm import AutoApplyModel\n\njob_llm = AutoApplyModel(\n    api_key=\"PROVIDE_API_KEY\", \n    provider=\"ENTER PROVIDER \u003cgemini\u003e or \u003copenai\u003e\",\n    downloads_dir=\"[optional] ENTER FOLDER PATH WHERE FILE GET DOWNLOADED, By default, 'downloads' folder\"\n)\n\njob_llm.resume_cv_pipeline(\n    \"ENTER_JOB_URL\", \n    \"YOUR_MASTER_RESUME_DATA\" # .pdf or .json\n) # Return and downloads curated resume and cover letter.\n```\n\n### 2.4. Setup \u0026 Run Code - Use as Project\n\n```sh\ngit clone https://github.com/Ztrimus/job-llm.git\ncd job-llm\n```\n 1. Create and activate python environment (use `python -m venv .env` or conda or etc.) to avoid any package dependency conflict.\n 2. Install [Poetry package](https://python-poetry.org/docs/basic-usage/) (dependency management and packaging tool)\n    ```bash\n    pip install poetry\n    ```\n 3. Install all required packages.\n     - Refer [pyproject.toml](pyproject.toml) or [poetry.lock](poetry.lock) for list of packages.\n        ```bash\n        poetry install\n        ```\n        OR\n     - If above command not working, we also provided [requirements.txt](resources/requirements.txt) file. But, we recommend using poetry.\n        ```bash\n        pip install -r resources/requirements.txt\n        ```\n4. We also need to install following packages to conversion of latex to pdf\n    - For linux\n        ```bash\n        sudo apt-get install texlive-latex-base texlive-fonts-recommended texlive-fonts-extra\n        ```\n        NOTE: try `sudo apt-get update` if terminal unable to locate package.\n    - For Mac\n        ```bash\n        brew install basictex\n        sudo tlmgr install enumitem fontawesome\n        ```\n5. If you want to run ollama models\n    ```sh\n    ollama pull llama3.1\n    ```\n6. Run following script to get result\n```bash\n\u003e\u003e\u003e python main.py /\n    --url \"JOB_POSTING_URL\" /\n    --master_data=\"JSON_USER_MASTER_DATA\" /\n    --api_key=\"YOUR_LLM_PROVIDER_API_KEY\" / # put api_key considering provider\n    --downloads_dir=\"DOWNLOAD_LOCATION_FOR_RESUME_CV\" /\n    --provider=\"openai\" # openai, gemini\n```\n\n## 3. Citations\nIf you find JobLLM useful in your research or applications, please consider giving us a star 🌟 and citing it.\n\n```bibtex\n@inproceedings{10.1145/3626772.3657680,\nauthor = {Zinjad, Saurabh Bhausaheb and Bhattacharjee, Amrita and Bhilegaonkar, Amey and Liu, Huan},\ntitle = {ResumeFlow: An LLM-facilitated Pipeline for Personalized Resume Generation and Refinement},\nseries = {SIGIR '24},\nbooktitle = {Proceedings of the 47th International ACM SIGIR Conference on Research and Development in Information Retrieval},\npublisher = {Association for Computing Machinery},\ndoi = {10.1145/3626772.3657680},\nurl = {https://doi.org/10.1145/3626772.3657680},\nyear = {2024},\nisbn = {9798400704314},\nlocation = {Washington DC, USA},\naddress = {New York, NY, USA},\n}\n```\n\n```bibtex\n@misc{zinjad2024resumeflow,\n      title={ResumeFlow: An LLM-facilitated Pipeline for Personalized Resume Generation and Refinement}, \n      author={Saurabh Bhausaheb Zinjad and Amrita Bhattacharjee and Amey Bhilegaonkar and Huan Liu},\n      year={2024},\n      eprint={2402.06221},\n      archivePrefix={arXiv},\n      primaryClass={cs.CL}\n}\n```\n\n## 4. License\nJobLLM is under the MIT License and is supported for commercial usage.\n\n## 5. TODO\nNeed to find way to install following command in streamlit\n```sh\nollama\nplaywright\n\"ollama pull llama3.1\"\n\"ollama pull bge-m3\"\n```\n\n## 4. References\n - [Prompt engineering Guidelines](https://platform.openai.com/docs/guides/prompt-engineering)\n - [Overleaf LaTex Resume Template](https://www.overleaf.com/latex/templates/jakes-resume-anonymous/cstpnrbkhndn)\n - [Combining LaTeX with Python](https://tug.org/tug2019/slides/slides-ziegenhagen-python.pdf)\n - [OpenAI Documentation](https://platform.openai.com/docs/api-reference/chat/create)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FZtrimus%2FResumeFlow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FZtrimus%2FResumeFlow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FZtrimus%2FResumeFlow/lists"}