March commited on
Commit
46917c3
·
0 Parent(s):
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitattributes +39 -0
  2. .gitignore +147 -0
  3. .pre-commit-config.yaml +57 -0
  4. Assets/img/Resume_Matcher_GitHub_Banner.jpg +0 -0
  5. Assets/img/Resume_Matcher_GitHub_Banner.png +3 -0
  6. Assets/img/backend_fastapi_demo.gif +3 -0
  7. Assets/img/favicon.ico +0 -0
  8. Assets/img/header.png +3 -0
  9. Assets/img/header_image.png +3 -0
  10. Assets/img/quadrant_cloud.png +3 -0
  11. CODE_OF_CONDUCT.md +132 -0
  12. CONTRIBUTING.md +207 -0
  13. Data/JobDescription/job_desc_cf.pdf +3 -0
  14. Data/JobDescription/job_desc_pigment.pdf +3 -0
  15. Data/Resumes/Erwin Baragula - Resume_V1_edited.pdf +3 -0
  16. Data/Resumes/Erwin Baragula - Resume_edited.pdf +3 -0
  17. Demo/DemoData.py +33 -0
  18. Dockerfile +21 -0
  19. LICENSE +201 -0
  20. README.md +19 -0
  21. SECURITY.md +9 -0
  22. UI-Mockup/Footer UI Mockup.png +3 -0
  23. UI-Mockup/mockup_1.1.png +3 -0
  24. __init__.py +0 -0
  25. build.dockerfile +11 -0
  26. docker-compose.yml +8 -0
  27. img.png +3 -0
  28. img_1.png +3 -0
  29. img_2.png +3 -0
  30. requirements.txt +3 -0
  31. resume_matcher/.gitattributes +41 -0
  32. resume_matcher/.gitignore +147 -0
  33. resume_matcher/.pre-commit-config.yaml +57 -0
  34. resume_matcher/Assets/img/Resume_Matcher_Gif.gif +3 -0
  35. resume_matcher/Assets/img/Resume_Matcher_GitHub_Banner.jpg +0 -0
  36. resume_matcher/Assets/img/Resume_Matcher_GitHub_Banner.png +3 -0
  37. resume_matcher/Assets/img/backend_fastapi_demo.gif +3 -0
  38. resume_matcher/Assets/img/favicon.ico +0 -0
  39. resume_matcher/Assets/img/header.png +3 -0
  40. resume_matcher/Assets/img/header_image.png +3 -0
  41. resume_matcher/Assets/img/quadrant_cloud.png +3 -0
  42. resume_matcher/Assets/img/webapp_demo.gif +3 -0
  43. resume_matcher/CODE_OF_CONDUCT.md +132 -0
  44. resume_matcher/CONTRIBUTING.md +207 -0
  45. resume_matcher/Data/JobDescription/job_desc_cf.pdf +3 -0
  46. resume_matcher/Data/JobDescription/job_desc_pigment.pdf +3 -0
  47. resume_matcher/Data/Resumes/Erwin Baragula - Resume_V1_edited.pdf +3 -0
  48. resume_matcher/Data/Resumes/Erwin Baragula - Resume_edited.pdf +3 -0
  49. resume_matcher/Demo/DemoData.py +33 -0
  50. resume_matcher/Dockerfile +21 -0
.gitattributes ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ *.7z filter=lfs diff=lfs merge=lfs -text
2
+ *.arrow filter=lfs diff=lfs merge=lfs -text
3
+ *.bin filter=lfs diff=lfs merge=lfs -text
4
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
5
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
6
+ *.ftz filter=lfs diff=lfs merge=lfs -text
7
+ *.gz filter=lfs diff=lfs merge=lfs -text
8
+ *.h5 filter=lfs diff=lfs merge=lfs -text
9
+ *.joblib filter=lfs diff=lfs merge=lfs -text
10
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
11
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
12
+ *.model filter=lfs diff=lfs merge=lfs -text
13
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
14
+ *.npy filter=lfs diff=lfs merge=lfs -text
15
+ *.npz filter=lfs diff=lfs merge=lfs -text
16
+ *.onnx filter=lfs diff=lfs merge=lfs -text
17
+ *.ot filter=lfs diff=lfs merge=lfs -text
18
+ *.parquet filter=lfs diff=lfs merge=lfs -text
19
+ *.pb filter=lfs diff=lfs merge=lfs -text
20
+ *.pickle filter=lfs diff=lfs merge=lfs -text
21
+ *.pkl filter=lfs diff=lfs merge=lfs -text
22
+ *.pt filter=lfs diff=lfs merge=lfs -text
23
+ *.pth filter=lfs diff=lfs merge=lfs -text
24
+ *.pdf filter=lfs diff=lfs merge=lfs -text
25
+ *.rar filter=lfs diff=lfs merge=lfs -text
26
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
27
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
29
+ *.tar filter=lfs diff=lfs merge=lfs -text
30
+ *.tflite filter=lfs diff=lfs merge=lfs -text
31
+ *.tgz filter=lfs diff=lfs merge=lfs -text
32
+ *.wasm filter=lfs diff=lfs merge=lfs -text
33
+ *.xz filter=lfs diff=lfs merge=lfs -text
34
+ *.zip filter=lfs diff=lfs merge=lfs -text
35
+ *.zst filter=lfs diff=lfs merge=lfs -text
36
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
37
+ *.git filter=lfs diff=lfs merge=lfs -text
38
+ *.gif filter=lfs diff=lfs merge=lfs -text
39
+ *.png filter=lfs diff=lfs merge=lfs -text
.gitignore ADDED
@@ -0,0 +1,147 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # C extensions
7
+ *.so
8
+
9
+ # Distribution / packaging
10
+ .Python
11
+ build/
12
+ develop-eggs/
13
+ dist/
14
+ downloads/
15
+ eggs/
16
+ .eggs/
17
+ lib/
18
+ lib64/
19
+ parts/
20
+ sdist/
21
+ var/
22
+ wheels/
23
+ pip-wheel-metadata/
24
+ share/python-wheels/
25
+ *.egg-info/
26
+ .installed.cfg
27
+ *.egg
28
+ MANIFEST
29
+ .DS_store
30
+
31
+ # PyInstaller
32
+ # Usually these files are written by a python script from a template
33
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
34
+ *.manifest
35
+ *.spec
36
+
37
+ # Installer logs
38
+ pip-log.txt
39
+ pip-delete-this-directory.txt
40
+
41
+ # Unit test / coverage reports
42
+ htmlcov/
43
+ .tox/
44
+ .nox/
45
+ .coverage
46
+ .coverage.*
47
+ .cache
48
+ nosetests.xml
49
+ coverage.xml
50
+ *.cover
51
+ *.py,cover
52
+ .hypothesis/
53
+ .pytest_cache/
54
+
55
+ # Translations
56
+ *.mo
57
+ *.pot
58
+
59
+ # Django stuff:
60
+ *.log
61
+ local_settings.py
62
+ db.sqlite3
63
+ db.sqlite3-journal
64
+
65
+ # Flask stuff:
66
+ instance/
67
+ .webassets-cache
68
+
69
+ # Scrapy stuff:
70
+ .scrapy
71
+
72
+ # Sphinx documentation
73
+ docs/_build/
74
+
75
+ # PyBuilder
76
+ target/
77
+
78
+ # Jupyter Notebook
79
+ .ipynb_checkpoints
80
+
81
+ # IPython
82
+ profile_default/
83
+ ipython_config.py
84
+
85
+ # pyenv
86
+ .python-version
87
+
88
+ # pipenv
89
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
90
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
91
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
92
+ # install all needed dependencies.
93
+ #Pipfile.lock
94
+
95
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
96
+ __pypackages__/
97
+
98
+ # Celery stuff
99
+ celerybeat-schedule
100
+ celerybeat.pid
101
+
102
+ # SageMath parsed files
103
+ *.sage.py
104
+
105
+ # Environments
106
+ .env
107
+ .venv
108
+ env/
109
+ venv/
110
+ ENV/
111
+ env.bak/
112
+ venv.bak/
113
+
114
+ # Spyder project settings
115
+ .spyderproject
116
+ .spyproject
117
+
118
+ # Rope project settings
119
+ .ropeproject
120
+
121
+ # mkdocs documentation
122
+ /site
123
+
124
+ # mypy
125
+ .mypy_cache/
126
+ .dmypy.json
127
+ dmypy.json
128
+
129
+ # Pyre type checker
130
+ .pyre/
131
+
132
+ #IntelliJ Idea Files
133
+ .idea
134
+ .idea/*
135
+
136
+ # Vscode's Files
137
+ .vscode
138
+ .vscode/*
139
+
140
+ scripts/similarity/config.yml
141
+
142
+ # Personal Data / Secrets
143
+ *.local.yml
144
+
145
+ # Processed or local files
146
+ /Data/Processed/*
147
+ *.local.pdf
.pre-commit-config.yaml ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ repos:
2
+ - repo: https://github.com/pre-commit/pre-commit-hooks
3
+ rev: v4.5.0
4
+ hooks:
5
+ - id: trailing-whitespace
6
+ - id: end-of-file-fixer
7
+ - id: check-yaml
8
+ - id: debug-statements
9
+ - id: double-quote-string-fixer
10
+ - id: name-tests-test
11
+ - id: requirements-txt-fixer
12
+ - repo: https://github.com/asottile/setup-cfg-fmt
13
+ rev: v2.5.0
14
+ hooks:
15
+ - id: setup-cfg-fmt
16
+ - repo: https://github.com/psf/black
17
+ rev: 22.10.0
18
+ hooks:
19
+ - id: black
20
+ - repo: https://github.com/pre-commit/mirrors-isort
21
+ rev: v5.9.2
22
+ hooks:
23
+ - id: isort
24
+ args: ["--profile", "black"]
25
+ - repo: https://github.com/PyCQA/flake8
26
+ rev: 7.0.0
27
+ hooks:
28
+ - id: flake8
29
+ - repo: https://github.com/PyCQA/docformatter
30
+ rev: v1.7.1
31
+ hooks:
32
+ - id: docformatter
33
+ additional_dependencies: [tomli]
34
+ args: [--in-place, --config, ./pyproject.toml]
35
+ - repo: https://github.com/pre-commit/mirrors-mypy
36
+ rev: v1.8.0
37
+ hooks:
38
+ - id: mypy
39
+ exclude: ^(docs/|example-plugin/)
40
+ - repo: https://github.com/asottile/pyupgrade
41
+ rev: v3.15.0
42
+ hooks:
43
+ - id: pyupgrade
44
+ args: [--py38-plus]
45
+ - repo: https://github.com/pycqa/pydocstyle
46
+ rev: 6.3.0
47
+ hooks:
48
+ - id: pydocstyle
49
+ - repo: https://github.com/myint/eradicate
50
+ rev: '2.2.0'
51
+ hooks:
52
+ - id: eradicate
53
+ args: []
54
+ - repo: https://github.com/hhatto/autopep8
55
+ rev: v2.1.0
56
+ hooks:
57
+ - id: autopep8
Assets/img/Resume_Matcher_GitHub_Banner.jpg ADDED
Assets/img/Resume_Matcher_GitHub_Banner.png ADDED

Git LFS Details

  • SHA256: 08a6f17c3eafedd99f83584861dcaa682e6497bede02744d9c3c744dc335ddb3
  • Pointer size: 130 Bytes
  • Size of remote file: 61.4 kB
Assets/img/backend_fastapi_demo.gif ADDED

Git LFS Details

  • SHA256: 51dc9b7093601cabcb0f25f2e4afa95b7a784fb35b1564d7edd58829e0e234b5
  • Pointer size: 132 Bytes
  • Size of remote file: 5.81 MB
Assets/img/favicon.ico ADDED
Assets/img/header.png ADDED

Git LFS Details

  • SHA256: 83c9e8606149b2e682a0440fb44960e81691553906ca4421bcb8754807ac1c20
  • Pointer size: 131 Bytes
  • Size of remote file: 164 kB
Assets/img/header_image.png ADDED

Git LFS Details

  • SHA256: 6f72bc2dc7c9cbdeeec83eafb87275f5c5c76f53b187d47ff2c51eaaccfe6e34
  • Pointer size: 131 Bytes
  • Size of remote file: 283 kB
Assets/img/quadrant_cloud.png ADDED

Git LFS Details

  • SHA256: 50fcc3b57da7425e350d37274eb5f27b84b39fbdc6911213719e6d3c616dcdf7
  • Pointer size: 130 Bytes
  • Size of remote file: 64.1 kB
CODE_OF_CONDUCT.md ADDED
@@ -0,0 +1,132 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ We as members, contributors, and leaders pledge to make participation in our
6
+ community a harassment-free experience for everyone, regardless of age, body
7
+ size, visible or invisible disability, ethnicity, sex characteristics, gender
8
+ identity and expression, level of experience, education, socio-economic status,
9
+ nationality, personal appearance, race, caste, color, religion, or sexual
10
+ identity and orientation.
11
+
12
+ We pledge to act and interact in ways that contribute to an open, welcoming,
13
+ diverse, inclusive, and healthy community.
14
+
15
+ ## Our Standards
16
+
17
+ Examples of behavior that contributes to a positive environment for our
18
+ community include:
19
+
20
+ * Demonstrating empathy and kindness toward other people
21
+ * Being respectful of differing opinions, viewpoints, and experiences
22
+ * Giving and gracefully accepting constructive feedback
23
+ * Accepting responsibility and apologizing to those affected by our mistakes,
24
+ and learning from the experience
25
+ * Focusing on what is best not just for us as individuals, but for the overall
26
+ community
27
+
28
+ Examples of unacceptable behavior include:
29
+
30
+ * The use of sexualized language or imagery, and sexual attention or advances of
31
+ any kind
32
+ * Trolling, insulting or derogatory comments, and personal or political attacks
33
+ * Public or private harassment
34
+ * Publishing others' private information, such as a physical or email address,
35
+ without their explicit permission
36
+ * Other conduct which could reasonably be considered inappropriate in a
37
+ professional setting
38
+
39
+ ## Enforcement Responsibilities
40
+
41
+ Community leaders are responsible for clarifying and enforcing our standards of
42
+ acceptable behavior and will take appropriate and fair corrective action in
43
+ response to any behavior that they deem inappropriate, threatening, offensive,
44
+ or harmful.
45
+
46
+ Community leaders have the right and responsibility to remove, edit, or reject
47
+ comments, commits, code, wiki edits, issues, and other contributions that are
48
+ not aligned to this Code of Conduct, and will communicate reasons for moderation
49
+ decisions when appropriate.
50
+
51
+ ## Scope
52
+
53
+ This Code of Conduct applies within all community spaces, and also applies when
54
+ an individual is officially representing the community in public spaces.
55
+ Examples of representing our community include using an official e-mail address,
56
+ posting via an official social media account, or acting as an appointed
57
+ representative at an online or offline event.
58
+
59
+ ## Enforcement
60
+
61
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
62
+ reported to the community leaders responsible for enforcement at
63
+ [saurabh@resumematcher.fyi](mailto:saurabh@resumematcher.fyi).
64
+ All complaints will be reviewed and investigated promptly and fairly.
65
+
66
+ All community leaders are obligated to respect the privacy and security of the
67
+ reporter of any incident.
68
+
69
+ ## Enforcement Guidelines
70
+
71
+ Community leaders will follow these Community Impact Guidelines in determining
72
+ the consequences for any action they deem in violation of this Code of Conduct:
73
+
74
+ ### 1. Correction
75
+
76
+ **Community Impact**: Use of inappropriate language or other behavior deemed
77
+ unprofessional or unwelcome in the community.
78
+
79
+ **Consequence**: A private, written warning from community leaders, providing
80
+ clarity around the nature of the violation and an explanation of why the
81
+ behavior was inappropriate. A public apology may be requested.
82
+
83
+ ### 2. Warning
84
+
85
+ **Community Impact**: A violation through a single incident or series of
86
+ actions.
87
+
88
+ **Consequence**: A warning with consequences for continued behavior. No
89
+ interaction with the people involved, including unsolicited interaction with
90
+ those enforcing the Code of Conduct, for a specified period of time. This
91
+ includes avoiding interactions in community spaces as well as external channels
92
+ like social media. Violating these terms may lead to a temporary or permanent
93
+ ban.
94
+
95
+ ### 3. Temporary Ban
96
+
97
+ **Community Impact**: A serious violation of community standards, including
98
+ sustained inappropriate behavior.
99
+
100
+ **Consequence**: A temporary ban from any sort of interaction or public
101
+ communication with the community for a specified period of time. No public or
102
+ private interaction with the people involved, including unsolicited interaction
103
+ with those enforcing the Code of Conduct, is allowed during this period.
104
+ Violating these terms may lead to a permanent ban.
105
+
106
+ ### 4. Permanent Ban
107
+
108
+ **Community Impact**: Demonstrating a pattern of violation of community
109
+ standards, including sustained inappropriate behavior, harassment of an
110
+ individual, or aggression toward or disparagement of classes of individuals.
111
+
112
+ **Consequence**: A permanent ban from any sort of public interaction within the
113
+ community.
114
+
115
+ ## Attribution
116
+
117
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage],
118
+ version 2.1, available at
119
+ [https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].
120
+
121
+ Community Impact Guidelines were inspired by
122
+ [Mozilla's code of conduct enforcement ladder][Mozilla CoC].
123
+
124
+ For answers to common questions about this code of conduct, see the FAQ at
125
+ [https://www.contributor-covenant.org/faq][FAQ]. Translations are available at
126
+ [https://www.contributor-covenant.org/translations][translations].
127
+
128
+ [homepage]: https://www.contributor-covenant.org
129
+ [v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
130
+ [Mozilla CoC]: https://github.com/mozilla/diversity
131
+ [FAQ]: https://www.contributor-covenant.org/faq
132
+ [translations]: https://www.contributor-covenant.org/translations
CONTRIBUTING.md ADDED
@@ -0,0 +1,207 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Contributing to Resume-Matcher on GitHub
2
+
3
+ Thank you for taking the time to contribute to [Resume-Matcher](https://github.com/srbhr/Resume-Matcher).
4
+
5
+ We want you to have a great experience making your first contribution.
6
+
7
+ This contribution could be anything from a small fix to a typo in our
8
+ documentation or a full feature.
9
+
10
+ Tell us what you enjoy working on and we would love to help!
11
+
12
+ If you would like to contribute, but don't know where to start, check the
13
+ issues that are labeled
14
+ `good first issue`
15
+ or
16
+ `help wanted`.
17
+
18
+ Contributions make the open-source community a fantastic place to learn, inspire, and create. Any contributions you make are greatly appreciated.
19
+
20
+ The development branch is `main`. This is the branch where all pull requests should be made.
21
+
22
+ ## Reporting Bugs
23
+
24
+ Please try to create bug reports that are:
25
+
26
+ - Reproducible. Include steps to reproduce the problem.
27
+ - Specific. Include as much detail as possible: which version, what environment, etc.
28
+ - Unique. Do not duplicate existing opened issues.
29
+ - Scoped to a Single Bug. One bug per report.
30
+
31
+ ## Testing
32
+
33
+ Please test your changes before submitting the PR.
34
+
35
+ ## Good First Issues
36
+
37
+ We have a list of `help wanted` and `good first issue` that contains small features and bugs with a relatively limited scope. Nevertheless, this is a great place to get started, gain experience, and get familiar with our contribution process.
38
+
39
+ ## Development
40
+
41
+ Follow these steps to set up the environment and run the application.
42
+
43
+ ## How to install
44
+
45
+ 1. Fork the repository [here](https://github.com/srbhr/Resume-Matcher/fork).
46
+
47
+ 2. Clone the forked repository.
48
+
49
+ ```bash
50
+ git clone https://github.com/<YOUR-USERNAME>/Resume-Matcher.git
51
+ cd Resume-Matcher
52
+ ```
53
+
54
+ 3. Create a Python Virtual Environment:
55
+
56
+ - Using [virtualenv](https://learnpython.com/blog/how-to-use-virtualenv-python/):
57
+
58
+ _Note_: Check how to install virtualenv on your system here [link](https://learnpython.com/blog/how-to-use-virtualenv-python/).
59
+
60
+ ```bash
61
+ virtualenv env
62
+ ```
63
+
64
+ **OR**
65
+
66
+ - Create a Python Virtual Environment:
67
+
68
+ ```bash
69
+ python -m venv env
70
+ ```
71
+
72
+ 4. Activate the Virtual Environment.
73
+
74
+ - On Windows.
75
+
76
+ ```bash
77
+ env\Scripts\activate
78
+ ```
79
+
80
+ - On macOS and Linux.
81
+
82
+ ```bash
83
+ source env/bin/activate
84
+ ```
85
+
86
+ **OPTIONAL (For pyenv users)**
87
+
88
+ Run the application with pyenv (Refer to this [article](https://realpython.com/intro-to-pyenv/#installing-pyenv))
89
+
90
+ - Build dependencies (on ubuntu)
91
+ ```
92
+ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python openssl
93
+ ```
94
+ ```
95
+
96
+ sudo apt-get install build-essential zlib1g-dev libffi-dev libssl-dev libbz2-dev libreadline-dev libsqlite3-dev liblzma-dev libncurses-dev
97
+
98
+ sudo apt-get install python-tk python3-tk tk-dev
99
+
100
+ sudo apt-get install build-essential zlib1g-dev libffi-dev libssl-dev libbz2-dev libreadline-dev libsqlite3-dev liblzma-dev
101
+
102
+ ```
103
+
104
+ - pyenv installer
105
+ ```
106
+ curl https://pyenv.run | bash
107
+ ```
108
+ - Install desired python version
109
+ ```
110
+ pyenv install -v 3.11.0
111
+ ```
112
+
113
+ - pyenv with virtual enviroment
114
+ ```
115
+ pyenv virtualenv 3.11.0 venv
116
+ ```
117
+
118
+ - Activate virtualenv with pyenv
119
+ ```
120
+ pyenv activate venv
121
+ ```
122
+
123
+ 5. Install Dependencies:
124
+
125
+ ```bash
126
+ pip install -r requirements.txt
127
+ ```
128
+
129
+ 6. Prepare Data:
130
+
131
+ - Resumes: Place your resumes in PDF format in the `Data/Resumes` folder. Remove any existing contents in this folder.
132
+ - Job Descriptions: Place your job descriptions in PDF format in the `Data/JobDescription` folder. Remove any existing contents in this folder.
133
+
134
+ 7. Parse Resumes to JSON:
135
+
136
+ ```python
137
+ python run_first.py
138
+ ```
139
+
140
+ 8. Run the Application:
141
+
142
+ ```python
143
+ streamlit run streamlit_app.py
144
+ ```
145
+
146
+ **Note**: For local versions, you do not need to run "streamlit_second.py" as it is specifically for deploying to Streamlit servers.
147
+
148
+ **Additional Note**: The Vector Similarity part is precomputed to optimize performance due to the resource-intensive nature of sentence encoders that require significant GPU and RAM resources. If you are interested in leveraging this feature in a Google Colab environment for free, refer to the upcoming blog (link to be provided) for further guidance.
149
+
150
+ <br/>
151
+
152
+ ### Docker
153
+
154
+ 1. Build the image and start application
155
+
156
+ ```bash
157
+ docker-compose up
158
+ ```
159
+
160
+ 2. Open `localhost:80` on your browser
161
+
162
+ <br/>
163
+
164
+ ### Running the Web Application
165
+
166
+ The full stack Next.js (React and FastAPI) web application allows users to interact with the Resume Matcher tool interactively via a web browser.
167
+
168
+ To run the full stack web application (frontend client and backend api servers), follow the instructions over on the [webapp README](/webapp/README.md) file.
169
+
170
+ ## Code Formatting
171
+
172
+ This project uses [Black](https://black.readthedocs.io/en/stable/) for code formatting. We believe this helps to keep the code base consistent and reduces the cognitive load when reading code.
173
+
174
+ Before submitting your pull request, please make sure your changes are in accordance with the Black style guide. You can format your code by running the following command in your terminal:
175
+
176
+ ```sh
177
+ black .
178
+ ```
179
+
180
+ ## Pre-commit Hooks
181
+
182
+ We also use [pre-commit](https://pre-commit.com/) to automatically check for common issues before commits are submitted. This includes checks for code formatting with Black.
183
+
184
+ If you haven't already, please install the pre-commit hooks by running the following command in your terminal:
185
+
186
+ ```sh
187
+ pip install pre-commit
188
+ pre-commit install
189
+ ```
190
+
191
+ Now, the pre-commit hooks will automatically run every time you commit your changes. If any of the hooks fail, the commit will be aborted.
192
+
193
+ ## Join Us, Contribute!
194
+
195
+ Pull Requests & Issues are not just welcomed, they're celebrated! Let's create together.
196
+
197
+ 🎉 Join our lively [Discord](https://dsc.gg/resume-matcher) community and discuss away!
198
+
199
+ 💡 Spot a problem? Create an issue!
200
+
201
+ 👩‍💻 Dive in and help resolve existing [issues](https://github.com/srbhr/Resume-Matcher/issues).
202
+
203
+ 🔔 Share your thoughts in our [Discussions & Announcements](https://github.com/srbhr/Resume-Matcher/discussions).
204
+
205
+ 🚀 Explore and improve our [Landing Page](https://github.com/srbhr/website-for-resume-matcher). PRs always welcome!
206
+
207
+ 📚 Contribute to the [Resume Matcher Docs](https://github.com/srbhr/Resume-Matcher-Docs) and help people get started with using the software.
Data/JobDescription/job_desc_cf.pdf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9eb61ad0a227259114b043c858d3b3533adf793449c8dd12015c73ecbd7bad10
3
+ size 69577
Data/JobDescription/job_desc_pigment.pdf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7193cdcbba9f7dc44340d4ad7ab64ac7df0b9e4b8f318361ff502b1c8b2868f5
3
+ size 107831
Data/Resumes/Erwin Baragula - Resume_V1_edited.pdf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:47d02f3c4789580da2b91e7aeb12e58c1a7789880dfbf1fed28d4ac66365daaf
3
+ size 263375
Data/Resumes/Erwin Baragula - Resume_edited.pdf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:ae97325dd1b3d25299626c9937650db75a40dce825ba5dc8f9a2521f94c16e58
3
+ size 227377
Demo/DemoData.py ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jobs = [
2
+ {
3
+ "job_desc": "Job Description Product Manager 10+ Years of Experience\nTech Solutions San Francisco CA USA\nAbout Us\nTech Solutions is a global leader in the technology industry specializing in the development of cuttingedge\nsoftware products We’re currently looking for a seasoned Product Manager with over 10 years of experience\nto join our dynamic team\nJob Description\nThe Product Manager will be responsible for guiding the success of a product and leading the crossfunctional\nteam that is responsible for improving it This is an important organizational role that sets the strategy\nroadmap and feature definition for a product or product line\nResponsibilities\n•Define the product strategy and roadmap\n•Deliver MRDs and PRDs with prioritized features and corresponding justification\n•Work with external third parties to assess partnerships and licensing opportunities\n•Run beta and pilot programs with earlystage products and samples\n•Be an expert with respect to the competition\n•Act as a leader within the company\n•Develop the core positioning and messaging for the product\n•Perform product demos to customers\n•Set pricing to meet revenue and profitability goals\nRequirements\n•10+ years of experience in product management\n•Demonstrated success defining and launching excellent products\n•Excellent written and verbal communication skills\n•Technical background with experience in software development\n•Excellent teamwork skills\n•Proven ability to influence crossfunctional teams without formal authority\n•Must be able to travel 20\n•Bachelor’s degree MBA preferred\n1 Benefits\n•Competitive salary package\n•Health dental and vision insurance\n•Retirement savings plan\n•Professional development opportunities\n•Flexible work hours\nTech Solutions is an equal opportunity employer We celebrate diversity and are committed to creating\nan inclusive environment for all employees\nHow to Apply\nTo apply please submit your resume and a brief explanation of your relevant experience to \n2"
4
+ },
5
+ {
6
+ "job_desc": "Job Description Senior Full Stack Engineer 5+ Years of\nExperience\nTech Solutions San Francisco CA USA\nAbout Us\nTech Solutions is a leading technology company that creates innovative solutions across a variety of industries\nOur mission is to improve lives through advanced technology We’re currently seeking a Senior Full Stack\nEngineer to join our dynamic team\nJob Description\nWe’re looking for a Senior Full Stack Engineer with 5+ years of experience in developing web applications\nThe successful candidate will have experience working with both frontend and backend technologies and\nwill be capable of overseeing projects from conception to production deployment\nResponsibilities\n•Developing front end website architecture\n•Designing user interactions on web pages\n•Developing back end website applications\n•Creating servers and databases for functionality\n•Ensuring crossplatform optimization for mobile phones\n•Seeing through a project from conception to finished product\n•Designing and developing APIs\n•Meeting both technical and consumer needs\n•Staying abreast of developments in web applications and programming languages\nRequirements\n•Degree in Computer Science or similar field\n•5+ years of experience in web development\n•Strong organizational and project management skills\n•Proficiency with fundamental front end languages such as HTML CSS and JavaScript\n•Proficiency with serverside languages such as Python Ruby Java PHP and Net\n•Familiarity with database technology such as MySQL Oracle and MongoDB\n1 •Excellent verbal communication skills\n•Good problemsolving skills\n•Attention to detail\nBenefits\n•Competitive salary package\n•Health dental and vision insurance\n•Retirement savings plan\n•Professional development opportunities\n•Flexible work hours\nTech Solutions is an equal opportunity employer and we value diversity at our company\nHow to Apply\nTo apply please submit your resume and a brief explanation of your relevant experience to \n2"
7
+ },
8
+ {
9
+ "job_desc": "Job Description Front End Engineer 2 Years of Experience\nTech Solutions San Francisco CA USA\nAbout Us\nAt Tech Solutions we are on a mission to build products that solve complex problems and improve people’s\nlives We are seeking a talented Front End Engineer to join our dynamic team in San Francisco\nJob Description\nWe are looking for a Front End Engineer with at least 2 years of experience in developing scalable and\nuserfriendly web applications The successful candidate will be proficient in modern JavaScript frameworks\nand libraries HTML CSS and responsive design principles This role will contribute significantly to the\ncreation and implementation of user interfaces for our web applications\nResponsibilities\n•Develop new userfacing features using modern JavaScript frameworks like Reactjs Vuejs or Angu\nlarjs\n•Build reusable code and libraries for future use\n•Ensure the technical feasibility of UI/UX designs\n•Optimize application for maximum speed and scalability\n•Assure that all user input is validated before submitting to backend services\n•Collaborate with other team members and stakeholders\nRequirements\n•2 years of experience as a Front End Developer or similar role\n•Proficiency in web markup including HTML5 CSS3\n•Knowledge of modern JavaScript programming and experience with libraries like jQuery\n•Familiarity with modern frontend build pipelines and tools\n•Experience with popular frontend frameworks such as React Vue or Angular\n•Familiarity with code versioning tools such as Git\n•Degree in Computer Science Engineering or a related field\n1 Benefits\n•Competitive salary package\n•Health dental and vision insurance\n•Retirement savings plan\n•Professional development opportunities\n•Flexible work hours\nTech Solutions is proud to be an equal opportunity employer We celebrate diversity and are committed\nto creating an inclusive environment for all employees\nHow to Apply\nTo apply please submit your resume and a brief explanation of your relevant experience to \n2"
10
+ },
11
+ {
12
+ "job_desc": "Job Description Java Developer 3 Years of Experience\nTech Solutions San Francisco CA USA\nAbout Us\nAt Tech Solutions we believe in the power of technology to solve complex problems We are a dynamic\nforwardthinking tech company specializing in custom software solutions for various industries We are\nseeking a talented and experienced Java Developer to join our team\nJob Description\nWe are seeking a skilled Java Developer with at least 3 years of experience in building highperforming scal\nable enterprisegrade applications You will be part of a talented software team that works on missioncritical\napplications Your roles and responsibilities will include managing Java/Java EE application development\nwhile providing expertise in the full software development lifecycle\nResponsibilities\n•Designing implementing and maintaining Java applications that are often highvolume and low\nlatency required for missioncritical systems\n•Delivering high availability and performance\n•Contributing to all phases of the development lifecycle\n•Writing welldesigned efficient and testable code\n•Conducting software analysis programming testing and debugging\n•Ensuring designs comply with specifications\n•Preparing and producing releases of software components\n•Supporting continuous improvement by investigating alternatives and technologies and presenting these\nfor architectural review\nRequirements\n•BS/MS degree in Computer Science Engineering or a related subject\n•Proven handson Software Development experience\n•Proven working experience in Java development\n•Handson experience in designing and developing applications using Java EE platforms\n•ObjectOriented Analysis and design using common design patterns\n•Profound insight of Java and JEE internals Classloading Memory Management Transaction man\nagement etc\n1 •Excellent knowledge of Relational Databases SQL and ORM technologies JPA2 Hibernate\n•Experience in developing web applications using at least one popular web framework JSF Wicket\nGWT Spring MVC\n•Experience with testdriven development\nBenefits\n•Competitive salary package\n•Health dental and vision insurance\n•Retirement savings plan\n•Professional development opportunities\n•Flexible work hours\nTech Solutions is proud to be an equal opportunity employer We celebrate diversity and are committed\nto creating an inclusive environment for all employees\nHow to Apply\nTo apply please submit your resume and a brief explanation of your relevant experience to \n2"
13
+ },
14
+ ]
15
+
16
+
17
+ resumes = [
18
+ {
19
+ "resume": "JOHN DOE\n123 Main St Anywhere USA \nLinkedIn linkedincom/in/johndoe GitHub githubcom/johndoe\nPROFESSIONAL SUMMARY\nHighly skilled Full Stack Developer with over 5 years of experience in Java and Angular development\nspecializing in designing building testing and maintaining web applications Proficient in an assortment\nof technologies including Java Spring Boot Angular HTML5 CSS3 and SQL Exceptional ability to\nwork in a team and selfdirect Committed to providing highquality results with little supervision\nSKILLS\n•Java and J2EE\n•Spring Boot Spring MVC and Hibernate\n•Angular versions 2+\n•JavaScript TypeScript HTML5 CSS3 and Bootstrap\n•RESTful APIs\n•SQL and NoSQL databases MySQL MongoDB\n•Agile and Scrum\n•Git and GitHub\n•Junit and Mockito\n•Docker\nWORK EXPERIENCE\nFull Stack Java Developer ABC Company Inc Anywhere USA June 2018 Present\n•Developed scalable robust and maintainable enterpriselevel applications using Java and Spring\nBoot\n•Used Angular for developing dynamic and responsive web frontends improving user experience\nby 30\n•Integrated applications with MySQL and MongoDB databases to store and retrieve data efficiently\n•Collaborated in an Agile development team to deliver highquality software every sprint\n•Created RESTful services and APIs for frontend and thirdparty applications\n•Wrote unit tests using Junit and Mockito for robust testing of application components\nSoftware Developer XYZ Solutions Anywhere USA July 2016 June 2018\n•Participated in the complete software development life cycle from requirement analysis to deploy\nment\n•Implemented business logic using Java and enhanced user interface using Angular\n•Developed and maintained SQL and NoSQL databases implementing complex queries for business\nneeds\n•Utilized Git for version control and collaborated with team members via GitHub\n•Assisted in troubleshooting software debugging and system enhancements\n1 EDUCATION\nBachelor of Science in Computer Science State University Anywhere USA May 2016\nCERTIFICATIONS\n•Oracle Certified Professional Java SE 8 Programmer\n•Certified Angular Developer\n2"
20
+ },
21
+ {
22
+ "resume": "Alfred Pennyworth\nProduct ManagerSilicon Valley CA USA\n♂¶obilealt\n/envel⌢\n/linkedininapennyworth\n\nProfessional Summary\nSeasoned Product Manager with over 20 years of experience in software development and product\nmanagement having worked at all FAANG companies Exceptional leadership skills strategic\nthinking and a track record of managing products from conception to market success\nSkills\nProduct management Agile methodologies Leadership Communication Project\nmanagement User Experience Design Market Research Data Analysis Java\nPython JavaScript HTML/CSS SQL AWS\nExperience\n2017 \nPresentProduct Manager Google Mountain View CA USA\nLeading crossfunctional teams to design develop and launch innovative products Devel\noping product strategies and making datadriven decisions to improve user experience and\nmeet business goals\n2012 2017 Software Development Engineer III Amazon Seattle WA USA\nLed a team of developers in building scalable and highperforming ecommerce applications\nSuccessfully delivered multiple projects within the stipulated time and budget\n2007 2012 Software Development Engineer II Apple Cupertino CA USA\nDesigned and implemented software components for various Apple services Optimized the\nperformance of applications and improved code quality through thorough testing\n2002 2007 Software Development Engineer I Netflix Los Gatos CA USA\nDeveloped and maintained the user interface for the Netflix web application Worked closely\nwith product managers and designers to create an optimal user experience\n1999 2002 Software Development Engineer I Facebook Menlo Park CA USA\nPlayed a key role in the development of early Facebook features Implemented scalable\nbackend services using Java and SQL\nEducation\n2016 2018 Master of Business Administration Stanford University Stanford CA USA\n1997 1999 Master of Science in Computer Science Massachusetts Institute of Technology \nCambridge MA USA\n1994 1997 Bachelor of Science in Computer Science University of California Berkeley \nBerkeley CA USA\nProjects\n1/2 2020 \nPresentPersonal Project Home Automation System\nDeveloped a smart home automation system using Raspberry Pi and Python The system\nautomates various home appliances based on user behavior and preferences contributing to\nenergy saving and improved user convenience\n2/2"
23
+ },
24
+ {
25
+ "resume": "Harvey Dent\nMachine Learning Engineer321 Gotham St\nGotham USA\n♂¶obilealt\n/envel⌢\n/linkedininhdent\n/githubhdent\nProfessional Summary\nMachine Learning Engineer with 5 years of experience in designing building and deploying predictive\nmodels and deep learning systems Proficient in Python TensorFlow PyTorch and Scikitlearn\nCurrently leading a team of AI engineers at OpenAI\nSkills\nPython R TensorFlow PyTorch Scikitlearn Keras SQL NoSQL Git Docker\nKubernetes Agile and Scrum Statistics Data visualization Deep Learning Natural\nLanguage Processing\nExperience\n2021 \nPresentMachine Learning Engineer OpenAI San Francisco USA\nLeading a team of AI engineers Designed and implemented deep learning models for natural\nlanguage processing tasks Improved the efficiency of model training and data processing\npipelines Published several research papers in toptier AI conferences\n2018 2021 Data Scientist Uber San Francisco USA\nDeveloped and deployed machine learning models to improve the efficiency of ride allocation\nalgorithms Utilized TensorFlow and PyTorch for developing predictive models Analyzed\nand visualized large data sets to drive business strategies\n2016 2018 Junior Data Analyst Facebook Menlo Park USA\nAnalyzed and visualized large datasets using Python and R Assisted in the development of\nmachine learning models for user behavior prediction Conducted A/B testing and provided\ninsights to the product team\nEducation\n2014 2016 Master of Science in Computer Science Specialization in AI MIT Cambridge\nUSA\n2010 2014 Bachelor of Science in Computer Science UC San Diego San Diego USA\nProjects\n2021 \nPresentPersonal Project Predictive Stock Trading Model\nDeveloped a predictive stock trading model using deep learning and time series analysis\nUsed PyTorch for model development and Docker for deployment The model predicts stock\nprices with a high degree of accuracy and automates trading decisions"
26
+ },
27
+ {
28
+ "resume": "Bruce Wayne\nMERN Stack Developer123 Gotham St\nGotham USA\n♂¶obilealt\n/envel⌢\n/linkedininbwayne\n\nProfessional Summary\nHighly skilled MERN Stack Developer with over 10 years of experience specializing in designing\nbuilding and maintaining complex web applications Proficient in MongoDB Expressjs React and\nNodejs Currently contributing to the development of AI technologies at OpenAI with a primary\nfocus on the ChatGPT project\nSkills\nJavaScript and TypeScript MongoDB Expressjs React Nodejs MERN stack\nRESTful APIs Git and GitHub Docker and Kubernetes Agile and Scrum Python\nand Machine Learning basics\nExperience\nJune 2020 \nPresentMERN Stack Developer OpenAI San Francisco USA\nWorking on the development of the ChatGPT project using Nodejs Expressjs and React\nImplementing RESTful services for communication between frontend and backend Utilizing\nDocker and Kubernetes for deployment and management of applications Working in an\nAgile environment delivering highquality software every sprint Contributing to the design\nand implementation of machine learning algorithms for natural language processing tasks\nJuly 2015 \nMay 2020Full Stack Developer Uber San Francisco USA\nDeveloped and maintained scalable web applications using MERN stack Ensured the\nperformance quality and responsiveness of applications Successfully deployed solutions\nusing Docker and Kubernetes Collaborated with a team of engineers product managers\nand UX designers Led a team of junior developers conducted code reviews and ensured\nadherence to best coding practices Worked closely with the data science team to optimize\nrecommendation algorithms and enhance user experience\nJune 2012 \nJune 2015Software Developer Facebook Menlo Park USA\nDeveloped features for the Facebook web application using React Ensured the performance\nof the MongoDB databases Utilized RESTful APIs for communication between different\nparts of the application Worked in a fastpaced testdriven development environment\nAssisted in migrating the legacy system to a modern MERN stack architecture\nEducation\n2009 2012 PhD in Computer Science CalTech Pasadena USA\n2007 2009 Master of Science in Computer Science MIT Cambridge USA\n2003 2007 Bachelor of Science in Computer Science UC San Diego San Diego USA\n1/2 Projects\n2019 \nPresentPersonal Project Gotham Event Planner\nCreated a fullfeatured web application to plan and organize events in Gotham city Used\nMERN stack for development and Docker for deployment The application allows users to\ncreate manage and share events and integrates with Google Maps API to display event\nlocations\n2/2"
29
+ },
30
+ {
31
+ "resume": "Barry Allen\nFrontEnd DeveloperGoogle HQ Mountain View CA USA\n♂¶obilealt\n/envel⌢\n/linkedininbwayne\n\nObjective\nSeeking a challenging role as a FrontEnd Developer where I can leverage my knowledge of UI/UX\ndesign and modern web technologies to create intuitive and engaging user interfaces\nEducation\n2018 2022 BTech Computer Science and Engineering Indian Institute of Technology\nDelhi New Delhi India\nOverall GPA 95/10\nSkills\nJavaScript ES6+ TypeScript HTML5 CSS3 Python React Redux Angular\nVuejs Nodejs Expressjs D3js Git Docker Webpack Babel Google Cloud\nPlatform Firebase RESTful APIs GraphQL Agile Development TestDriven\nDevelopment Responsive Design UI/UX\nExperience\nJune 2022 \nPresentSoftware Engineer FrontEnd Google Mountain View CA USA\nDeveloping intuitive and engaging user interfaces using React and Redux Working closely\nwith UX designers to implement responsive and accessible web design Participating in\nagile development processes including sprint planning and code reviews Collaborating with\nbackend developers to integrate RESTful APIs and ensure seamless data flow\nProjects\n2022 Personal Expense Tracker\nDeveloped a personal expense tracker application using React Redux and Firebase Imple\nmented user authentication using Firebase Auth and data storage using Firestore Utilized\nD3js for data visualization to provide users with insights into their spending patterns"
32
+ },
33
+ ]
Dockerfile ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM python:3.9-slim
2
+
3
+ WORKDIR /app
4
+
5
+ RUN apt-get update && apt-get install -y \
6
+ build-essential \
7
+ curl \
8
+ software-properties-common \
9
+ git \
10
+ && rm -rf /var/lib/apt/lists/*
11
+
12
+ COPY requirements.txt ./
13
+ COPY src/ ./src/
14
+
15
+ RUN pip3 install -r requirements.txt
16
+
17
+ EXPOSE 8501
18
+
19
+ HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health
20
+
21
+ ENTRYPOINT ["streamlit", "run", "src/streamlit_app.py", "--server.port=8501", "--server.address=0.0.0.0"]
LICENSE ADDED
@@ -0,0 +1,201 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Apache License
2
+ Version 2.0, January 2004
3
+ http://www.apache.org/licenses/
4
+
5
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6
+
7
+ 1. Definitions.
8
+
9
+ "License" shall mean the terms and conditions for use, reproduction,
10
+ and distribution as defined by Sections 1 through 9 of this document.
11
+
12
+ "Licensor" shall mean the copyright owner or entity authorized by
13
+ the copyright owner that is granting the License.
14
+
15
+ "Legal Entity" shall mean the union of the acting entity and all
16
+ other entities that control, are controlled by, or are under common
17
+ control with that entity. For the purposes of this definition,
18
+ "control" means (i) the power, direct or indirect, to cause the
19
+ direction or management of such entity, whether by contract or
20
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
21
+ outstanding shares, or (iii) beneficial ownership of such entity.
22
+
23
+ "You" (or "Your") shall mean an individual or Legal Entity
24
+ exercising permissions granted by this License.
25
+
26
+ "Source" form shall mean the preferred form for making modifications,
27
+ including but not limited to software source code, documentation
28
+ source, and configuration files.
29
+
30
+ "Object" form shall mean any form resulting from mechanical
31
+ transformation or translation of a Source form, including but
32
+ not limited to compiled object code, generated documentation,
33
+ and conversions to other media types.
34
+
35
+ "Work" shall mean the work of authorship, whether in Source or
36
+ Object form, made available under the License, as indicated by a
37
+ copyright notice that is included in or attached to the work
38
+ (an example is provided in the Appendix below).
39
+
40
+ "Derivative Works" shall mean any work, whether in Source or Object
41
+ form, that is based on (or derived from) the Work and for which the
42
+ editorial revisions, annotations, elaborations, or other modifications
43
+ represent, as a whole, an original work of authorship. For the purposes
44
+ of this License, Derivative Works shall not include works that remain
45
+ separable from, or merely link (or bind by name) to the interfaces of,
46
+ the Work and Derivative Works thereof.
47
+
48
+ "Contribution" shall mean any work of authorship, including
49
+ the original version of the Work and any modifications or additions
50
+ to that Work or Derivative Works thereof, that is intentionally
51
+ submitted to Licensor for inclusion in the Work by the copyright owner
52
+ or by an individual or Legal Entity authorized to submit on behalf of
53
+ the copyright owner. For the purposes of this definition, "submitted"
54
+ means any form of electronic, verbal, or written communication sent
55
+ to the Licensor or its representatives, including but not limited to
56
+ communication on electronic mailing lists, source code control systems,
57
+ and issue tracking systems that are managed by, or on behalf of, the
58
+ Licensor for the purpose of discussing and improving the Work, but
59
+ excluding communication that is conspicuously marked or otherwise
60
+ designated in writing by the copyright owner as "Not a Contribution."
61
+
62
+ "Contributor" shall mean Licensor and any individual or Legal Entity
63
+ on behalf of whom a Contribution has been received by Licensor and
64
+ subsequently incorporated within the Work.
65
+
66
+ 2. Grant of Copyright License. Subject to the terms and conditions of
67
+ this License, each Contributor hereby grants to You a perpetual,
68
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69
+ copyright license to reproduce, prepare Derivative Works of,
70
+ publicly display, publicly perform, sublicense, and distribute the
71
+ Work and such Derivative Works in Source or Object form.
72
+
73
+ 3. Grant of Patent License. Subject to the terms and conditions of
74
+ this License, each Contributor hereby grants to You a perpetual,
75
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76
+ (except as stated in this section) patent license to make, have made,
77
+ use, offer to sell, sell, import, and otherwise transfer the Work,
78
+ where such license applies only to those patent claims licensable
79
+ by such Contributor that are necessarily infringed by their
80
+ Contribution(s) alone or by combination of their Contribution(s)
81
+ with the Work to which such Contribution(s) was submitted. If You
82
+ institute patent litigation against any entity (including a
83
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
84
+ or a Contribution incorporated within the Work constitutes direct
85
+ or contributory patent infringement, then any patent licenses
86
+ granted to You under this License for that Work shall terminate
87
+ as of the date such litigation is filed.
88
+
89
+ 4. Redistribution. You may reproduce and distribute copies of the
90
+ Work or Derivative Works thereof in any medium, with or without
91
+ modifications, and in Source or Object form, provided that You
92
+ meet the following conditions:
93
+
94
+ (a) You must give any other recipients of the Work or
95
+ Derivative Works a copy of this License; and
96
+
97
+ (b) You must cause any modified files to carry prominent notices
98
+ stating that You changed the files; and
99
+
100
+ (c) You must retain, in the Source form of any Derivative Works
101
+ that You distribute, all copyright, patent, trademark, and
102
+ attribution notices from the Source form of the Work,
103
+ excluding those notices that do not pertain to any part of
104
+ the Derivative Works; and
105
+
106
+ (d) If the Work includes a "NOTICE" text file as part of its
107
+ distribution, then any Derivative Works that You distribute must
108
+ include a readable copy of the attribution notices contained
109
+ within such NOTICE file, excluding those notices that do not
110
+ pertain to any part of the Derivative Works, in at least one
111
+ of the following places: within a NOTICE text file distributed
112
+ as part of the Derivative Works; within the Source form or
113
+ documentation, if provided along with the Derivative Works; or,
114
+ within a display generated by the Derivative Works, if and
115
+ wherever such third-party notices normally appear. The contents
116
+ of the NOTICE file are for informational purposes only and
117
+ do not modify the License. You may add Your own attribution
118
+ notices within Derivative Works that You distribute, alongside
119
+ or as an addendum to the NOTICE text from the Work, provided
120
+ that such additional attribution notices cannot be construed
121
+ as modifying the License.
122
+
123
+ You may add Your own copyright statement to Your modifications and
124
+ may provide additional or different license terms and conditions
125
+ for use, reproduction, or distribution of Your modifications, or
126
+ for any such Derivative Works as a whole, provided Your use,
127
+ reproduction, and distribution of the Work otherwise complies with
128
+ the conditions stated in this License.
129
+
130
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
131
+ any Contribution intentionally submitted for inclusion in the Work
132
+ by You to the Licensor shall be under the terms and conditions of
133
+ this License, without any additional terms or conditions.
134
+ Notwithstanding the above, nothing herein shall supersede or modify
135
+ the terms of any separate license agreement you may have executed
136
+ with Licensor regarding such Contributions.
137
+
138
+ 6. Trademarks. This License does not grant permission to use the trade
139
+ names, trademarks, service marks, or product names of the Licensor,
140
+ except as required for reasonable and customary use in describing the
141
+ origin of the Work and reproducing the content of the NOTICE file.
142
+
143
+ 7. Disclaimer of Warranty. Unless required by applicable law or
144
+ agreed to in writing, Licensor provides the Work (and each
145
+ Contributor provides its Contributions) on an "AS IS" BASIS,
146
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147
+ implied, including, without limitation, any warranties or conditions
148
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149
+ PARTICULAR PURPOSE. You are solely responsible for determining the
150
+ appropriateness of using or redistributing the Work and assume any
151
+ risks associated with Your exercise of permissions under this License.
152
+
153
+ 8. Limitation of Liability. In no event and under no legal theory,
154
+ whether in tort (including negligence), contract, or otherwise,
155
+ unless required by applicable law (such as deliberate and grossly
156
+ negligent acts) or agreed to in writing, shall any Contributor be
157
+ liable to You for damages, including any direct, indirect, special,
158
+ incidental, or consequential damages of any character arising as a
159
+ result of this License or out of the use or inability to use the
160
+ Work (including but not limited to damages for loss of goodwill,
161
+ work stoppage, computer failure or malfunction, or any and all
162
+ other commercial damages or losses), even if such Contributor
163
+ has been advised of the possibility of such damages.
164
+
165
+ 9. Accepting Warranty or Additional Liability. While redistributing
166
+ the Work or Derivative Works thereof, You may choose to offer,
167
+ and charge a fee for, acceptance of support, warranty, indemnity,
168
+ or other liability obligations and/or rights consistent with this
169
+ License. However, in accepting such obligations, You may act only
170
+ on Your own behalf and on Your sole responsibility, not on behalf
171
+ of any other Contributor, and only if You agree to indemnify,
172
+ defend, and hold each Contributor harmless for any liability
173
+ incurred by, or claims asserted against, such Contributor by reason
174
+ of your accepting any such warranty or additional liability.
175
+
176
+ END OF TERMS AND CONDITIONS
177
+
178
+ APPENDIX: How to apply the Apache License to your work.
179
+
180
+ To apply the Apache License to your work, attach the following
181
+ boilerplate notice, with the fields enclosed by brackets "[]"
182
+ replaced with your own identifying information. (Don't include
183
+ the brackets!) The text should be enclosed in the appropriate
184
+ comment syntax for the file format. We also recommend that a
185
+ file or class name and description of purpose be included on the
186
+ same "printed page" as the copyright notice for easier
187
+ identification within third-party archives.
188
+
189
+ Copyright [yyyy] [name of copyright owner]
190
+
191
+ Licensed under the Apache License, Version 2.0 (the "License");
192
+ you may not use this file except in compliance with the License.
193
+ You may obtain a copy of the License at
194
+
195
+ http://www.apache.org/licenses/LICENSE-2.0
196
+
197
+ Unless required by applicable law or agreed to in writing, software
198
+ distributed under the License is distributed on an "AS IS" BASIS,
199
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200
+ See the License for the specific language governing permissions and
201
+ limitations under the License.
README.md ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Resumematcher
3
+ emoji: 🚀
4
+ colorFrom: red
5
+ colorTo: red
6
+ sdk: docker
7
+ app_port: 8501
8
+ tags:
9
+ - streamlit
10
+ pinned: false
11
+ short_description: Streamlit template space
12
+ ---
13
+
14
+ # Welcome to Streamlit!
15
+
16
+ Edit `/src/streamlit_app.py` to customize this app to your heart's desire. :heart:
17
+
18
+ If you have any questions, checkout our [documentation](https://docs.streamlit.io) and [community
19
+ forums](https://discuss.streamlit.io).
SECURITY.md ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ # Responsible Disclosure
2
+
3
+ ## Reporting a Vulnerability
4
+
5
+ Resume-Matcher strives to stay ahead of security vulnerabilities but would love to get the community's help in making us aware of the ones we miss.
6
+
7
+ Please contact a maintainer to report security vulnerabilities and exploits.
8
+
9
+ We will acknowledge legitimate reports and address them according to their severity.
UI-Mockup/Footer UI Mockup.png ADDED

Git LFS Details

  • SHA256: 28fae3ddeaeb00b68a4b82491f40e97b875e36b15bc394016866cfad80b08871
  • Pointer size: 130 Bytes
  • Size of remote file: 63.4 kB
UI-Mockup/mockup_1.1.png ADDED

Git LFS Details

  • SHA256: 1bcaba23add5d8223ee45f140972ccf28e8e5ea19a5d30660cf5b201d4227387
  • Pointer size: 132 Bytes
  • Size of remote file: 2.03 MB
__init__.py ADDED
File without changes
build.dockerfile ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM python:3.11.0-slim
2
+ WORKDIR /data/Resume-Matcher
3
+ RUN apt-get update
4
+ RUN apt-get install -y build-essential python-dev git
5
+ RUN pip install -U pip setuptools wheel
6
+ COPY requirements.txt requirements.txt
7
+ RUN pip install -r requirements.txt
8
+ COPY . .
9
+ EXPOSE 8501
10
+ RUN python run_first.py
11
+ ENTRYPOINT [ "streamlit", "run", "streamlit_app.py"]
docker-compose.yml ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ services:
2
+ resume-matcher:
3
+ image : resume-matcher
4
+ build:
5
+ context: ./
6
+ dockerfile : build.dockerfile
7
+ ports:
8
+ - 80:8501
img.png ADDED

Git LFS Details

  • SHA256: 50fcc3b57da7425e350d37274eb5f27b84b39fbdc6911213719e6d3c616dcdf7
  • Pointer size: 130 Bytes
  • Size of remote file: 64.1 kB
img_1.png ADDED

Git LFS Details

  • SHA256: bbb62dacf4c9958942806560e8f28aca2199c60d4de8df96fcffd0ce320408d1
  • Pointer size: 130 Bytes
  • Size of remote file: 94 kB
img_2.png ADDED

Git LFS Details

  • SHA256: 805eef00374f7935846da726f2266de0be78d171c6e1cc1046ccf6832e718758
  • Pointer size: 130 Bytes
  • Size of remote file: 37.2 kB
requirements.txt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ altair
2
+ pandas
3
+ streamlit
resume_matcher/.gitattributes ADDED
@@ -0,0 +1,41 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <<<<<<< HEAD
2
+ *.7z filter=lfs diff=lfs merge=lfs -text
3
+ *.arrow filter=lfs diff=lfs merge=lfs -text
4
+ *.bin filter=lfs diff=lfs merge=lfs -text
5
+ *.bz2 filter=lfs diff=lfs merge=lfs -text
6
+ *.ckpt filter=lfs diff=lfs merge=lfs -text
7
+ *.ftz filter=lfs diff=lfs merge=lfs -text
8
+ *.gz filter=lfs diff=lfs merge=lfs -text
9
+ *.h5 filter=lfs diff=lfs merge=lfs -text
10
+ *.joblib filter=lfs diff=lfs merge=lfs -text
11
+ *.lfs.* filter=lfs diff=lfs merge=lfs -text
12
+ *.mlmodel filter=lfs diff=lfs merge=lfs -text
13
+ *.model filter=lfs diff=lfs merge=lfs -text
14
+ *.msgpack filter=lfs diff=lfs merge=lfs -text
15
+ *.npy filter=lfs diff=lfs merge=lfs -text
16
+ *.npz filter=lfs diff=lfs merge=lfs -text
17
+ *.onnx filter=lfs diff=lfs merge=lfs -text
18
+ *.ot filter=lfs diff=lfs merge=lfs -text
19
+ *.parquet filter=lfs diff=lfs merge=lfs -text
20
+ *.pb filter=lfs diff=lfs merge=lfs -text
21
+ *.pickle filter=lfs diff=lfs merge=lfs -text
22
+ *.pkl filter=lfs diff=lfs merge=lfs -text
23
+ *.pt filter=lfs diff=lfs merge=lfs -text
24
+ *.pth filter=lfs diff=lfs merge=lfs -text
25
+ *.rar filter=lfs diff=lfs merge=lfs -text
26
+ *.safetensors filter=lfs diff=lfs merge=lfs -text
27
+ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
28
+ *.tar.* filter=lfs diff=lfs merge=lfs -text
29
+ *.tar filter=lfs diff=lfs merge=lfs -text
30
+ *.tflite filter=lfs diff=lfs merge=lfs -text
31
+ *.tgz filter=lfs diff=lfs merge=lfs -text
32
+ *.wasm filter=lfs diff=lfs merge=lfs -text
33
+ *.xz filter=lfs diff=lfs merge=lfs -text
34
+ *.zip filter=lfs diff=lfs merge=lfs -text
35
+ *.zst filter=lfs diff=lfs merge=lfs -text
36
+ *tfevents* filter=lfs diff=lfs merge=lfs -text
37
+ =======
38
+ *.git filter=lfs diff=lfs merge=lfs -text
39
+ *.gif filter=lfs diff=lfs merge=lfs -text
40
+ *.png filter=lfs diff=lfs merge=lfs -text
41
+ >>>>>>> ac55bbf (First Commit)
resume_matcher/.gitignore ADDED
@@ -0,0 +1,147 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # C extensions
7
+ *.so
8
+
9
+ # Distribution / packaging
10
+ .Python
11
+ build/
12
+ develop-eggs/
13
+ dist/
14
+ downloads/
15
+ eggs/
16
+ .eggs/
17
+ lib/
18
+ lib64/
19
+ parts/
20
+ sdist/
21
+ var/
22
+ wheels/
23
+ pip-wheel-metadata/
24
+ share/python-wheels/
25
+ *.egg-info/
26
+ .installed.cfg
27
+ *.egg
28
+ MANIFEST
29
+ .DS_store
30
+
31
+ # PyInstaller
32
+ # Usually these files are written by a python script from a template
33
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
34
+ *.manifest
35
+ *.spec
36
+
37
+ # Installer logs
38
+ pip-log.txt
39
+ pip-delete-this-directory.txt
40
+
41
+ # Unit test / coverage reports
42
+ htmlcov/
43
+ .tox/
44
+ .nox/
45
+ .coverage
46
+ .coverage.*
47
+ .cache
48
+ nosetests.xml
49
+ coverage.xml
50
+ *.cover
51
+ *.py,cover
52
+ .hypothesis/
53
+ .pytest_cache/
54
+
55
+ # Translations
56
+ *.mo
57
+ *.pot
58
+
59
+ # Django stuff:
60
+ *.log
61
+ local_settings.py
62
+ db.sqlite3
63
+ db.sqlite3-journal
64
+
65
+ # Flask stuff:
66
+ instance/
67
+ .webassets-cache
68
+
69
+ # Scrapy stuff:
70
+ .scrapy
71
+
72
+ # Sphinx documentation
73
+ docs/_build/
74
+
75
+ # PyBuilder
76
+ target/
77
+
78
+ # Jupyter Notebook
79
+ .ipynb_checkpoints
80
+
81
+ # IPython
82
+ profile_default/
83
+ ipython_config.py
84
+
85
+ # pyenv
86
+ .python-version
87
+
88
+ # pipenv
89
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
90
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
91
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
92
+ # install all needed dependencies.
93
+ #Pipfile.lock
94
+
95
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
96
+ __pypackages__/
97
+
98
+ # Celery stuff
99
+ celerybeat-schedule
100
+ celerybeat.pid
101
+
102
+ # SageMath parsed files
103
+ *.sage.py
104
+
105
+ # Environments
106
+ .env
107
+ .venv
108
+ env/
109
+ venv/
110
+ ENV/
111
+ env.bak/
112
+ venv.bak/
113
+
114
+ # Spyder project settings
115
+ .spyderproject
116
+ .spyproject
117
+
118
+ # Rope project settings
119
+ .ropeproject
120
+
121
+ # mkdocs documentation
122
+ /site
123
+
124
+ # mypy
125
+ .mypy_cache/
126
+ .dmypy.json
127
+ dmypy.json
128
+
129
+ # Pyre type checker
130
+ .pyre/
131
+
132
+ #IntelliJ Idea Files
133
+ .idea
134
+ .idea/*
135
+
136
+ # Vscode's Files
137
+ .vscode
138
+ .vscode/*
139
+
140
+ scripts/similarity/config.yml
141
+
142
+ # Personal Data / Secrets
143
+ *.local.yml
144
+
145
+ # Processed or local files
146
+ /Data/Processed/*
147
+ *.local.pdf
resume_matcher/.pre-commit-config.yaml ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ repos:
2
+ - repo: https://github.com/pre-commit/pre-commit-hooks
3
+ rev: v4.5.0
4
+ hooks:
5
+ - id: trailing-whitespace
6
+ - id: end-of-file-fixer
7
+ - id: check-yaml
8
+ - id: debug-statements
9
+ - id: double-quote-string-fixer
10
+ - id: name-tests-test
11
+ - id: requirements-txt-fixer
12
+ - repo: https://github.com/asottile/setup-cfg-fmt
13
+ rev: v2.5.0
14
+ hooks:
15
+ - id: setup-cfg-fmt
16
+ - repo: https://github.com/psf/black
17
+ rev: 22.10.0
18
+ hooks:
19
+ - id: black
20
+ - repo: https://github.com/pre-commit/mirrors-isort
21
+ rev: v5.9.2
22
+ hooks:
23
+ - id: isort
24
+ args: ["--profile", "black"]
25
+ - repo: https://github.com/PyCQA/flake8
26
+ rev: 7.0.0
27
+ hooks:
28
+ - id: flake8
29
+ - repo: https://github.com/PyCQA/docformatter
30
+ rev: v1.7.1
31
+ hooks:
32
+ - id: docformatter
33
+ additional_dependencies: [tomli]
34
+ args: [--in-place, --config, ./pyproject.toml]
35
+ - repo: https://github.com/pre-commit/mirrors-mypy
36
+ rev: v1.8.0
37
+ hooks:
38
+ - id: mypy
39
+ exclude: ^(docs/|example-plugin/)
40
+ - repo: https://github.com/asottile/pyupgrade
41
+ rev: v3.15.0
42
+ hooks:
43
+ - id: pyupgrade
44
+ args: [--py38-plus]
45
+ - repo: https://github.com/pycqa/pydocstyle
46
+ rev: 6.3.0
47
+ hooks:
48
+ - id: pydocstyle
49
+ - repo: https://github.com/myint/eradicate
50
+ rev: '2.2.0'
51
+ hooks:
52
+ - id: eradicate
53
+ args: []
54
+ - repo: https://github.com/hhatto/autopep8
55
+ rev: v2.1.0
56
+ hooks:
57
+ - id: autopep8
resume_matcher/Assets/img/Resume_Matcher_Gif.gif ADDED

Git LFS Details

  • SHA256: 4876aae7c85f941e6eceec0f6b17c20b94f10afb22ade029df3603675c90a94a
  • Pointer size: 133 Bytes
  • Size of remote file: 12.2 MB
resume_matcher/Assets/img/Resume_Matcher_GitHub_Banner.jpg ADDED
resume_matcher/Assets/img/Resume_Matcher_GitHub_Banner.png ADDED

Git LFS Details

  • SHA256: 08a6f17c3eafedd99f83584861dcaa682e6497bede02744d9c3c744dc335ddb3
  • Pointer size: 130 Bytes
  • Size of remote file: 61.4 kB
resume_matcher/Assets/img/backend_fastapi_demo.gif ADDED

Git LFS Details

  • SHA256: 51dc9b7093601cabcb0f25f2e4afa95b7a784fb35b1564d7edd58829e0e234b5
  • Pointer size: 132 Bytes
  • Size of remote file: 5.81 MB
resume_matcher/Assets/img/favicon.ico ADDED
resume_matcher/Assets/img/header.png ADDED

Git LFS Details

  • SHA256: 83c9e8606149b2e682a0440fb44960e81691553906ca4421bcb8754807ac1c20
  • Pointer size: 131 Bytes
  • Size of remote file: 164 kB
resume_matcher/Assets/img/header_image.png ADDED

Git LFS Details

  • SHA256: 6f72bc2dc7c9cbdeeec83eafb87275f5c5c76f53b187d47ff2c51eaaccfe6e34
  • Pointer size: 131 Bytes
  • Size of remote file: 283 kB
resume_matcher/Assets/img/quadrant_cloud.png ADDED

Git LFS Details

  • SHA256: 50fcc3b57da7425e350d37274eb5f27b84b39fbdc6911213719e6d3c616dcdf7
  • Pointer size: 130 Bytes
  • Size of remote file: 64.1 kB
resume_matcher/Assets/img/webapp_demo.gif ADDED

Git LFS Details

  • SHA256: 86af2b4286c23b29aa6277dd770ec2ea248a467e7f2d0f868a8cb3147c8c9ea1
  • Pointer size: 133 Bytes
  • Size of remote file: 31.3 MB
resume_matcher/CODE_OF_CONDUCT.md ADDED
@@ -0,0 +1,132 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Code of Conduct
2
+
3
+ ## Our Pledge
4
+
5
+ We as members, contributors, and leaders pledge to make participation in our
6
+ community a harassment-free experience for everyone, regardless of age, body
7
+ size, visible or invisible disability, ethnicity, sex characteristics, gender
8
+ identity and expression, level of experience, education, socio-economic status,
9
+ nationality, personal appearance, race, caste, color, religion, or sexual
10
+ identity and orientation.
11
+
12
+ We pledge to act and interact in ways that contribute to an open, welcoming,
13
+ diverse, inclusive, and healthy community.
14
+
15
+ ## Our Standards
16
+
17
+ Examples of behavior that contributes to a positive environment for our
18
+ community include:
19
+
20
+ * Demonstrating empathy and kindness toward other people
21
+ * Being respectful of differing opinions, viewpoints, and experiences
22
+ * Giving and gracefully accepting constructive feedback
23
+ * Accepting responsibility and apologizing to those affected by our mistakes,
24
+ and learning from the experience
25
+ * Focusing on what is best not just for us as individuals, but for the overall
26
+ community
27
+
28
+ Examples of unacceptable behavior include:
29
+
30
+ * The use of sexualized language or imagery, and sexual attention or advances of
31
+ any kind
32
+ * Trolling, insulting or derogatory comments, and personal or political attacks
33
+ * Public or private harassment
34
+ * Publishing others' private information, such as a physical or email address,
35
+ without their explicit permission
36
+ * Other conduct which could reasonably be considered inappropriate in a
37
+ professional setting
38
+
39
+ ## Enforcement Responsibilities
40
+
41
+ Community leaders are responsible for clarifying and enforcing our standards of
42
+ acceptable behavior and will take appropriate and fair corrective action in
43
+ response to any behavior that they deem inappropriate, threatening, offensive,
44
+ or harmful.
45
+
46
+ Community leaders have the right and responsibility to remove, edit, or reject
47
+ comments, commits, code, wiki edits, issues, and other contributions that are
48
+ not aligned to this Code of Conduct, and will communicate reasons for moderation
49
+ decisions when appropriate.
50
+
51
+ ## Scope
52
+
53
+ This Code of Conduct applies within all community spaces, and also applies when
54
+ an individual is officially representing the community in public spaces.
55
+ Examples of representing our community include using an official e-mail address,
56
+ posting via an official social media account, or acting as an appointed
57
+ representative at an online or offline event.
58
+
59
+ ## Enforcement
60
+
61
+ Instances of abusive, harassing, or otherwise unacceptable behavior may be
62
+ reported to the community leaders responsible for enforcement at
63
+ [saurabh@resumematcher.fyi](mailto:saurabh@resumematcher.fyi).
64
+ All complaints will be reviewed and investigated promptly and fairly.
65
+
66
+ All community leaders are obligated to respect the privacy and security of the
67
+ reporter of any incident.
68
+
69
+ ## Enforcement Guidelines
70
+
71
+ Community leaders will follow these Community Impact Guidelines in determining
72
+ the consequences for any action they deem in violation of this Code of Conduct:
73
+
74
+ ### 1. Correction
75
+
76
+ **Community Impact**: Use of inappropriate language or other behavior deemed
77
+ unprofessional or unwelcome in the community.
78
+
79
+ **Consequence**: A private, written warning from community leaders, providing
80
+ clarity around the nature of the violation and an explanation of why the
81
+ behavior was inappropriate. A public apology may be requested.
82
+
83
+ ### 2. Warning
84
+
85
+ **Community Impact**: A violation through a single incident or series of
86
+ actions.
87
+
88
+ **Consequence**: A warning with consequences for continued behavior. No
89
+ interaction with the people involved, including unsolicited interaction with
90
+ those enforcing the Code of Conduct, for a specified period of time. This
91
+ includes avoiding interactions in community spaces as well as external channels
92
+ like social media. Violating these terms may lead to a temporary or permanent
93
+ ban.
94
+
95
+ ### 3. Temporary Ban
96
+
97
+ **Community Impact**: A serious violation of community standards, including
98
+ sustained inappropriate behavior.
99
+
100
+ **Consequence**: A temporary ban from any sort of interaction or public
101
+ communication with the community for a specified period of time. No public or
102
+ private interaction with the people involved, including unsolicited interaction
103
+ with those enforcing the Code of Conduct, is allowed during this period.
104
+ Violating these terms may lead to a permanent ban.
105
+
106
+ ### 4. Permanent Ban
107
+
108
+ **Community Impact**: Demonstrating a pattern of violation of community
109
+ standards, including sustained inappropriate behavior, harassment of an
110
+ individual, or aggression toward or disparagement of classes of individuals.
111
+
112
+ **Consequence**: A permanent ban from any sort of public interaction within the
113
+ community.
114
+
115
+ ## Attribution
116
+
117
+ This Code of Conduct is adapted from the [Contributor Covenant][homepage],
118
+ version 2.1, available at
119
+ [https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].
120
+
121
+ Community Impact Guidelines were inspired by
122
+ [Mozilla's code of conduct enforcement ladder][Mozilla CoC].
123
+
124
+ For answers to common questions about this code of conduct, see the FAQ at
125
+ [https://www.contributor-covenant.org/faq][FAQ]. Translations are available at
126
+ [https://www.contributor-covenant.org/translations][translations].
127
+
128
+ [homepage]: https://www.contributor-covenant.org
129
+ [v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
130
+ [Mozilla CoC]: https://github.com/mozilla/diversity
131
+ [FAQ]: https://www.contributor-covenant.org/faq
132
+ [translations]: https://www.contributor-covenant.org/translations
resume_matcher/CONTRIBUTING.md ADDED
@@ -0,0 +1,207 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Contributing to Resume-Matcher on GitHub
2
+
3
+ Thank you for taking the time to contribute to [Resume-Matcher](https://github.com/srbhr/Resume-Matcher).
4
+
5
+ We want you to have a great experience making your first contribution.
6
+
7
+ This contribution could be anything from a small fix to a typo in our
8
+ documentation or a full feature.
9
+
10
+ Tell us what you enjoy working on and we would love to help!
11
+
12
+ If you would like to contribute, but don't know where to start, check the
13
+ issues that are labeled
14
+ `good first issue`
15
+ or
16
+ `help wanted`.
17
+
18
+ Contributions make the open-source community a fantastic place to learn, inspire, and create. Any contributions you make are greatly appreciated.
19
+
20
+ The development branch is `main`. This is the branch where all pull requests should be made.
21
+
22
+ ## Reporting Bugs
23
+
24
+ Please try to create bug reports that are:
25
+
26
+ - Reproducible. Include steps to reproduce the problem.
27
+ - Specific. Include as much detail as possible: which version, what environment, etc.
28
+ - Unique. Do not duplicate existing opened issues.
29
+ - Scoped to a Single Bug. One bug per report.
30
+
31
+ ## Testing
32
+
33
+ Please test your changes before submitting the PR.
34
+
35
+ ## Good First Issues
36
+
37
+ We have a list of `help wanted` and `good first issue` that contains small features and bugs with a relatively limited scope. Nevertheless, this is a great place to get started, gain experience, and get familiar with our contribution process.
38
+
39
+ ## Development
40
+
41
+ Follow these steps to set up the environment and run the application.
42
+
43
+ ## How to install
44
+
45
+ 1. Fork the repository [here](https://github.com/srbhr/Resume-Matcher/fork).
46
+
47
+ 2. Clone the forked repository.
48
+
49
+ ```bash
50
+ git clone https://github.com/<YOUR-USERNAME>/Resume-Matcher.git
51
+ cd Resume-Matcher
52
+ ```
53
+
54
+ 3. Create a Python Virtual Environment:
55
+
56
+ - Using [virtualenv](https://learnpython.com/blog/how-to-use-virtualenv-python/):
57
+
58
+ _Note_: Check how to install virtualenv on your system here [link](https://learnpython.com/blog/how-to-use-virtualenv-python/).
59
+
60
+ ```bash
61
+ virtualenv env
62
+ ```
63
+
64
+ **OR**
65
+
66
+ - Create a Python Virtual Environment:
67
+
68
+ ```bash
69
+ python -m venv env
70
+ ```
71
+
72
+ 4. Activate the Virtual Environment.
73
+
74
+ - On Windows.
75
+
76
+ ```bash
77
+ env\Scripts\activate
78
+ ```
79
+
80
+ - On macOS and Linux.
81
+
82
+ ```bash
83
+ source env/bin/activate
84
+ ```
85
+
86
+ **OPTIONAL (For pyenv users)**
87
+
88
+ Run the application with pyenv (Refer to this [article](https://realpython.com/intro-to-pyenv/#installing-pyenv))
89
+
90
+ - Build dependencies (on ubuntu)
91
+ ```
92
+ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python openssl
93
+ ```
94
+ ```
95
+
96
+ sudo apt-get install build-essential zlib1g-dev libffi-dev libssl-dev libbz2-dev libreadline-dev libsqlite3-dev liblzma-dev libncurses-dev
97
+
98
+ sudo apt-get install python-tk python3-tk tk-dev
99
+
100
+ sudo apt-get install build-essential zlib1g-dev libffi-dev libssl-dev libbz2-dev libreadline-dev libsqlite3-dev liblzma-dev
101
+
102
+ ```
103
+
104
+ - pyenv installer
105
+ ```
106
+ curl https://pyenv.run | bash
107
+ ```
108
+ - Install desired python version
109
+ ```
110
+ pyenv install -v 3.11.0
111
+ ```
112
+
113
+ - pyenv with virtual enviroment
114
+ ```
115
+ pyenv virtualenv 3.11.0 venv
116
+ ```
117
+
118
+ - Activate virtualenv with pyenv
119
+ ```
120
+ pyenv activate venv
121
+ ```
122
+
123
+ 5. Install Dependencies:
124
+
125
+ ```bash
126
+ pip install -r requirements.txt
127
+ ```
128
+
129
+ 6. Prepare Data:
130
+
131
+ - Resumes: Place your resumes in PDF format in the `Data/Resumes` folder. Remove any existing contents in this folder.
132
+ - Job Descriptions: Place your job descriptions in PDF format in the `Data/JobDescription` folder. Remove any existing contents in this folder.
133
+
134
+ 7. Parse Resumes to JSON:
135
+
136
+ ```python
137
+ python run_first.py
138
+ ```
139
+
140
+ 8. Run the Application:
141
+
142
+ ```python
143
+ streamlit run streamlit_app.py
144
+ ```
145
+
146
+ **Note**: For local versions, you do not need to run "streamlit_second.py" as it is specifically for deploying to Streamlit servers.
147
+
148
+ **Additional Note**: The Vector Similarity part is precomputed to optimize performance due to the resource-intensive nature of sentence encoders that require significant GPU and RAM resources. If you are interested in leveraging this feature in a Google Colab environment for free, refer to the upcoming blog (link to be provided) for further guidance.
149
+
150
+ <br/>
151
+
152
+ ### Docker
153
+
154
+ 1. Build the image and start application
155
+
156
+ ```bash
157
+ docker-compose up
158
+ ```
159
+
160
+ 2. Open `localhost:80` on your browser
161
+
162
+ <br/>
163
+
164
+ ### Running the Web Application
165
+
166
+ The full stack Next.js (React and FastAPI) web application allows users to interact with the Resume Matcher tool interactively via a web browser.
167
+
168
+ To run the full stack web application (frontend client and backend api servers), follow the instructions over on the [webapp README](/webapp/README.md) file.
169
+
170
+ ## Code Formatting
171
+
172
+ This project uses [Black](https://black.readthedocs.io/en/stable/) for code formatting. We believe this helps to keep the code base consistent and reduces the cognitive load when reading code.
173
+
174
+ Before submitting your pull request, please make sure your changes are in accordance with the Black style guide. You can format your code by running the following command in your terminal:
175
+
176
+ ```sh
177
+ black .
178
+ ```
179
+
180
+ ## Pre-commit Hooks
181
+
182
+ We also use [pre-commit](https://pre-commit.com/) to automatically check for common issues before commits are submitted. This includes checks for code formatting with Black.
183
+
184
+ If you haven't already, please install the pre-commit hooks by running the following command in your terminal:
185
+
186
+ ```sh
187
+ pip install pre-commit
188
+ pre-commit install
189
+ ```
190
+
191
+ Now, the pre-commit hooks will automatically run every time you commit your changes. If any of the hooks fail, the commit will be aborted.
192
+
193
+ ## Join Us, Contribute!
194
+
195
+ Pull Requests & Issues are not just welcomed, they're celebrated! Let's create together.
196
+
197
+ 🎉 Join our lively [Discord](https://dsc.gg/resume-matcher) community and discuss away!
198
+
199
+ 💡 Spot a problem? Create an issue!
200
+
201
+ 👩‍💻 Dive in and help resolve existing [issues](https://github.com/srbhr/Resume-Matcher/issues).
202
+
203
+ 🔔 Share your thoughts in our [Discussions & Announcements](https://github.com/srbhr/Resume-Matcher/discussions).
204
+
205
+ 🚀 Explore and improve our [Landing Page](https://github.com/srbhr/website-for-resume-matcher). PRs always welcome!
206
+
207
+ 📚 Contribute to the [Resume Matcher Docs](https://github.com/srbhr/Resume-Matcher-Docs) and help people get started with using the software.
resume_matcher/Data/JobDescription/job_desc_cf.pdf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9eb61ad0a227259114b043c858d3b3533adf793449c8dd12015c73ecbd7bad10
3
+ size 69577
resume_matcher/Data/JobDescription/job_desc_pigment.pdf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:7193cdcbba9f7dc44340d4ad7ab64ac7df0b9e4b8f318361ff502b1c8b2868f5
3
+ size 107831
resume_matcher/Data/Resumes/Erwin Baragula - Resume_V1_edited.pdf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:47d02f3c4789580da2b91e7aeb12e58c1a7789880dfbf1fed28d4ac66365daaf
3
+ size 263375
resume_matcher/Data/Resumes/Erwin Baragula - Resume_edited.pdf ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:ae97325dd1b3d25299626c9937650db75a40dce825ba5dc8f9a2521f94c16e58
3
+ size 227377
resume_matcher/Demo/DemoData.py ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jobs = [
2
+ {
3
+ "job_desc": "Job Description Product Manager 10+ Years of Experience\nTech Solutions San Francisco CA USA\nAbout Us\nTech Solutions is a global leader in the technology industry specializing in the development of cuttingedge\nsoftware products We’re currently looking for a seasoned Product Manager with over 10 years of experience\nto join our dynamic team\nJob Description\nThe Product Manager will be responsible for guiding the success of a product and leading the crossfunctional\nteam that is responsible for improving it This is an important organizational role that sets the strategy\nroadmap and feature definition for a product or product line\nResponsibilities\n•Define the product strategy and roadmap\n•Deliver MRDs and PRDs with prioritized features and corresponding justification\n•Work with external third parties to assess partnerships and licensing opportunities\n•Run beta and pilot programs with earlystage products and samples\n•Be an expert with respect to the competition\n•Act as a leader within the company\n•Develop the core positioning and messaging for the product\n•Perform product demos to customers\n•Set pricing to meet revenue and profitability goals\nRequirements\n•10+ years of experience in product management\n•Demonstrated success defining and launching excellent products\n•Excellent written and verbal communication skills\n•Technical background with experience in software development\n•Excellent teamwork skills\n•Proven ability to influence crossfunctional teams without formal authority\n•Must be able to travel 20\n•Bachelor’s degree MBA preferred\n1 Benefits\n•Competitive salary package\n•Health dental and vision insurance\n•Retirement savings plan\n•Professional development opportunities\n•Flexible work hours\nTech Solutions is an equal opportunity employer We celebrate diversity and are committed to creating\nan inclusive environment for all employees\nHow to Apply\nTo apply please submit your resume and a brief explanation of your relevant experience to \n2"
4
+ },
5
+ {
6
+ "job_desc": "Job Description Senior Full Stack Engineer 5+ Years of\nExperience\nTech Solutions San Francisco CA USA\nAbout Us\nTech Solutions is a leading technology company that creates innovative solutions across a variety of industries\nOur mission is to improve lives through advanced technology We’re currently seeking a Senior Full Stack\nEngineer to join our dynamic team\nJob Description\nWe’re looking for a Senior Full Stack Engineer with 5+ years of experience in developing web applications\nThe successful candidate will have experience working with both frontend and backend technologies and\nwill be capable of overseeing projects from conception to production deployment\nResponsibilities\n•Developing front end website architecture\n•Designing user interactions on web pages\n•Developing back end website applications\n•Creating servers and databases for functionality\n•Ensuring crossplatform optimization for mobile phones\n•Seeing through a project from conception to finished product\n•Designing and developing APIs\n•Meeting both technical and consumer needs\n•Staying abreast of developments in web applications and programming languages\nRequirements\n•Degree in Computer Science or similar field\n•5+ years of experience in web development\n•Strong organizational and project management skills\n•Proficiency with fundamental front end languages such as HTML CSS and JavaScript\n•Proficiency with serverside languages such as Python Ruby Java PHP and Net\n•Familiarity with database technology such as MySQL Oracle and MongoDB\n1 •Excellent verbal communication skills\n•Good problemsolving skills\n•Attention to detail\nBenefits\n•Competitive salary package\n•Health dental and vision insurance\n•Retirement savings plan\n•Professional development opportunities\n•Flexible work hours\nTech Solutions is an equal opportunity employer and we value diversity at our company\nHow to Apply\nTo apply please submit your resume and a brief explanation of your relevant experience to \n2"
7
+ },
8
+ {
9
+ "job_desc": "Job Description Front End Engineer 2 Years of Experience\nTech Solutions San Francisco CA USA\nAbout Us\nAt Tech Solutions we are on a mission to build products that solve complex problems and improve people’s\nlives We are seeking a talented Front End Engineer to join our dynamic team in San Francisco\nJob Description\nWe are looking for a Front End Engineer with at least 2 years of experience in developing scalable and\nuserfriendly web applications The successful candidate will be proficient in modern JavaScript frameworks\nand libraries HTML CSS and responsive design principles This role will contribute significantly to the\ncreation and implementation of user interfaces for our web applications\nResponsibilities\n•Develop new userfacing features using modern JavaScript frameworks like Reactjs Vuejs or Angu\nlarjs\n•Build reusable code and libraries for future use\n•Ensure the technical feasibility of UI/UX designs\n•Optimize application for maximum speed and scalability\n•Assure that all user input is validated before submitting to backend services\n•Collaborate with other team members and stakeholders\nRequirements\n•2 years of experience as a Front End Developer or similar role\n•Proficiency in web markup including HTML5 CSS3\n•Knowledge of modern JavaScript programming and experience with libraries like jQuery\n•Familiarity with modern frontend build pipelines and tools\n•Experience with popular frontend frameworks such as React Vue or Angular\n•Familiarity with code versioning tools such as Git\n•Degree in Computer Science Engineering or a related field\n1 Benefits\n•Competitive salary package\n•Health dental and vision insurance\n•Retirement savings plan\n•Professional development opportunities\n•Flexible work hours\nTech Solutions is proud to be an equal opportunity employer We celebrate diversity and are committed\nto creating an inclusive environment for all employees\nHow to Apply\nTo apply please submit your resume and a brief explanation of your relevant experience to \n2"
10
+ },
11
+ {
12
+ "job_desc": "Job Description Java Developer 3 Years of Experience\nTech Solutions San Francisco CA USA\nAbout Us\nAt Tech Solutions we believe in the power of technology to solve complex problems We are a dynamic\nforwardthinking tech company specializing in custom software solutions for various industries We are\nseeking a talented and experienced Java Developer to join our team\nJob Description\nWe are seeking a skilled Java Developer with at least 3 years of experience in building highperforming scal\nable enterprisegrade applications You will be part of a talented software team that works on missioncritical\napplications Your roles and responsibilities will include managing Java/Java EE application development\nwhile providing expertise in the full software development lifecycle\nResponsibilities\n•Designing implementing and maintaining Java applications that are often highvolume and low\nlatency required for missioncritical systems\n•Delivering high availability and performance\n•Contributing to all phases of the development lifecycle\n•Writing welldesigned efficient and testable code\n•Conducting software analysis programming testing and debugging\n•Ensuring designs comply with specifications\n•Preparing and producing releases of software components\n•Supporting continuous improvement by investigating alternatives and technologies and presenting these\nfor architectural review\nRequirements\n•BS/MS degree in Computer Science Engineering or a related subject\n•Proven handson Software Development experience\n•Proven working experience in Java development\n•Handson experience in designing and developing applications using Java EE platforms\n•ObjectOriented Analysis and design using common design patterns\n•Profound insight of Java and JEE internals Classloading Memory Management Transaction man\nagement etc\n1 •Excellent knowledge of Relational Databases SQL and ORM technologies JPA2 Hibernate\n•Experience in developing web applications using at least one popular web framework JSF Wicket\nGWT Spring MVC\n•Experience with testdriven development\nBenefits\n•Competitive salary package\n•Health dental and vision insurance\n•Retirement savings plan\n•Professional development opportunities\n•Flexible work hours\nTech Solutions is proud to be an equal opportunity employer We celebrate diversity and are committed\nto creating an inclusive environment for all employees\nHow to Apply\nTo apply please submit your resume and a brief explanation of your relevant experience to \n2"
13
+ },
14
+ ]
15
+
16
+
17
+ resumes = [
18
+ {
19
+ "resume": "JOHN DOE\n123 Main St Anywhere USA \nLinkedIn linkedincom/in/johndoe GitHub githubcom/johndoe\nPROFESSIONAL SUMMARY\nHighly skilled Full Stack Developer with over 5 years of experience in Java and Angular development\nspecializing in designing building testing and maintaining web applications Proficient in an assortment\nof technologies including Java Spring Boot Angular HTML5 CSS3 and SQL Exceptional ability to\nwork in a team and selfdirect Committed to providing highquality results with little supervision\nSKILLS\n•Java and J2EE\n•Spring Boot Spring MVC and Hibernate\n•Angular versions 2+\n•JavaScript TypeScript HTML5 CSS3 and Bootstrap\n•RESTful APIs\n•SQL and NoSQL databases MySQL MongoDB\n•Agile and Scrum\n•Git and GitHub\n•Junit and Mockito\n•Docker\nWORK EXPERIENCE\nFull Stack Java Developer ABC Company Inc Anywhere USA June 2018 Present\n•Developed scalable robust and maintainable enterpriselevel applications using Java and Spring\nBoot\n•Used Angular for developing dynamic and responsive web frontends improving user experience\nby 30\n•Integrated applications with MySQL and MongoDB databases to store and retrieve data efficiently\n•Collaborated in an Agile development team to deliver highquality software every sprint\n•Created RESTful services and APIs for frontend and thirdparty applications\n•Wrote unit tests using Junit and Mockito for robust testing of application components\nSoftware Developer XYZ Solutions Anywhere USA July 2016 June 2018\n•Participated in the complete software development life cycle from requirement analysis to deploy\nment\n•Implemented business logic using Java and enhanced user interface using Angular\n•Developed and maintained SQL and NoSQL databases implementing complex queries for business\nneeds\n•Utilized Git for version control and collaborated with team members via GitHub\n•Assisted in troubleshooting software debugging and system enhancements\n1 EDUCATION\nBachelor of Science in Computer Science State University Anywhere USA May 2016\nCERTIFICATIONS\n•Oracle Certified Professional Java SE 8 Programmer\n•Certified Angular Developer\n2"
20
+ },
21
+ {
22
+ "resume": "Alfred Pennyworth\nProduct ManagerSilicon Valley CA USA\n♂¶obilealt\n/envel⌢\n/linkedininapennyworth\n\nProfessional Summary\nSeasoned Product Manager with over 20 years of experience in software development and product\nmanagement having worked at all FAANG companies Exceptional leadership skills strategic\nthinking and a track record of managing products from conception to market success\nSkills\nProduct management Agile methodologies Leadership Communication Project\nmanagement User Experience Design Market Research Data Analysis Java\nPython JavaScript HTML/CSS SQL AWS\nExperience\n2017 \nPresentProduct Manager Google Mountain View CA USA\nLeading crossfunctional teams to design develop and launch innovative products Devel\noping product strategies and making datadriven decisions to improve user experience and\nmeet business goals\n2012 2017 Software Development Engineer III Amazon Seattle WA USA\nLed a team of developers in building scalable and highperforming ecommerce applications\nSuccessfully delivered multiple projects within the stipulated time and budget\n2007 2012 Software Development Engineer II Apple Cupertino CA USA\nDesigned and implemented software components for various Apple services Optimized the\nperformance of applications and improved code quality through thorough testing\n2002 2007 Software Development Engineer I Netflix Los Gatos CA USA\nDeveloped and maintained the user interface for the Netflix web application Worked closely\nwith product managers and designers to create an optimal user experience\n1999 2002 Software Development Engineer I Facebook Menlo Park CA USA\nPlayed a key role in the development of early Facebook features Implemented scalable\nbackend services using Java and SQL\nEducation\n2016 2018 Master of Business Administration Stanford University Stanford CA USA\n1997 1999 Master of Science in Computer Science Massachusetts Institute of Technology \nCambridge MA USA\n1994 1997 Bachelor of Science in Computer Science University of California Berkeley \nBerkeley CA USA\nProjects\n1/2 2020 \nPresentPersonal Project Home Automation System\nDeveloped a smart home automation system using Raspberry Pi and Python The system\nautomates various home appliances based on user behavior and preferences contributing to\nenergy saving and improved user convenience\n2/2"
23
+ },
24
+ {
25
+ "resume": "Harvey Dent\nMachine Learning Engineer321 Gotham St\nGotham USA\n♂¶obilealt\n/envel⌢\n/linkedininhdent\n/githubhdent\nProfessional Summary\nMachine Learning Engineer with 5 years of experience in designing building and deploying predictive\nmodels and deep learning systems Proficient in Python TensorFlow PyTorch and Scikitlearn\nCurrently leading a team of AI engineers at OpenAI\nSkills\nPython R TensorFlow PyTorch Scikitlearn Keras SQL NoSQL Git Docker\nKubernetes Agile and Scrum Statistics Data visualization Deep Learning Natural\nLanguage Processing\nExperience\n2021 \nPresentMachine Learning Engineer OpenAI San Francisco USA\nLeading a team of AI engineers Designed and implemented deep learning models for natural\nlanguage processing tasks Improved the efficiency of model training and data processing\npipelines Published several research papers in toptier AI conferences\n2018 2021 Data Scientist Uber San Francisco USA\nDeveloped and deployed machine learning models to improve the efficiency of ride allocation\nalgorithms Utilized TensorFlow and PyTorch for developing predictive models Analyzed\nand visualized large data sets to drive business strategies\n2016 2018 Junior Data Analyst Facebook Menlo Park USA\nAnalyzed and visualized large datasets using Python and R Assisted in the development of\nmachine learning models for user behavior prediction Conducted A/B testing and provided\ninsights to the product team\nEducation\n2014 2016 Master of Science in Computer Science Specialization in AI MIT Cambridge\nUSA\n2010 2014 Bachelor of Science in Computer Science UC San Diego San Diego USA\nProjects\n2021 \nPresentPersonal Project Predictive Stock Trading Model\nDeveloped a predictive stock trading model using deep learning and time series analysis\nUsed PyTorch for model development and Docker for deployment The model predicts stock\nprices with a high degree of accuracy and automates trading decisions"
26
+ },
27
+ {
28
+ "resume": "Bruce Wayne\nMERN Stack Developer123 Gotham St\nGotham USA\n♂¶obilealt\n/envel⌢\n/linkedininbwayne\n\nProfessional Summary\nHighly skilled MERN Stack Developer with over 10 years of experience specializing in designing\nbuilding and maintaining complex web applications Proficient in MongoDB Expressjs React and\nNodejs Currently contributing to the development of AI technologies at OpenAI with a primary\nfocus on the ChatGPT project\nSkills\nJavaScript and TypeScript MongoDB Expressjs React Nodejs MERN stack\nRESTful APIs Git and GitHub Docker and Kubernetes Agile and Scrum Python\nand Machine Learning basics\nExperience\nJune 2020 \nPresentMERN Stack Developer OpenAI San Francisco USA\nWorking on the development of the ChatGPT project using Nodejs Expressjs and React\nImplementing RESTful services for communication between frontend and backend Utilizing\nDocker and Kubernetes for deployment and management of applications Working in an\nAgile environment delivering highquality software every sprint Contributing to the design\nand implementation of machine learning algorithms for natural language processing tasks\nJuly 2015 \nMay 2020Full Stack Developer Uber San Francisco USA\nDeveloped and maintained scalable web applications using MERN stack Ensured the\nperformance quality and responsiveness of applications Successfully deployed solutions\nusing Docker and Kubernetes Collaborated with a team of engineers product managers\nand UX designers Led a team of junior developers conducted code reviews and ensured\nadherence to best coding practices Worked closely with the data science team to optimize\nrecommendation algorithms and enhance user experience\nJune 2012 \nJune 2015Software Developer Facebook Menlo Park USA\nDeveloped features for the Facebook web application using React Ensured the performance\nof the MongoDB databases Utilized RESTful APIs for communication between different\nparts of the application Worked in a fastpaced testdriven development environment\nAssisted in migrating the legacy system to a modern MERN stack architecture\nEducation\n2009 2012 PhD in Computer Science CalTech Pasadena USA\n2007 2009 Master of Science in Computer Science MIT Cambridge USA\n2003 2007 Bachelor of Science in Computer Science UC San Diego San Diego USA\n1/2 Projects\n2019 \nPresentPersonal Project Gotham Event Planner\nCreated a fullfeatured web application to plan and organize events in Gotham city Used\nMERN stack for development and Docker for deployment The application allows users to\ncreate manage and share events and integrates with Google Maps API to display event\nlocations\n2/2"
29
+ },
30
+ {
31
+ "resume": "Barry Allen\nFrontEnd DeveloperGoogle HQ Mountain View CA USA\n♂¶obilealt\n/envel⌢\n/linkedininbwayne\n\nObjective\nSeeking a challenging role as a FrontEnd Developer where I can leverage my knowledge of UI/UX\ndesign and modern web technologies to create intuitive and engaging user interfaces\nEducation\n2018 2022 BTech Computer Science and Engineering Indian Institute of Technology\nDelhi New Delhi India\nOverall GPA 95/10\nSkills\nJavaScript ES6+ TypeScript HTML5 CSS3 Python React Redux Angular\nVuejs Nodejs Expressjs D3js Git Docker Webpack Babel Google Cloud\nPlatform Firebase RESTful APIs GraphQL Agile Development TestDriven\nDevelopment Responsive Design UI/UX\nExperience\nJune 2022 \nPresentSoftware Engineer FrontEnd Google Mountain View CA USA\nDeveloping intuitive and engaging user interfaces using React and Redux Working closely\nwith UX designers to implement responsive and accessible web design Participating in\nagile development processes including sprint planning and code reviews Collaborating with\nbackend developers to integrate RESTful APIs and ensure seamless data flow\nProjects\n2022 Personal Expense Tracker\nDeveloped a personal expense tracker application using React Redux and Firebase Imple\nmented user authentication using Firebase Auth and data storage using Firestore Utilized\nD3js for data visualization to provide users with insights into their spending patterns"
32
+ },
33
+ ]
resume_matcher/Dockerfile ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM python:3.9-slim
2
+
3
+ WORKDIR /app
4
+
5
+ RUN apt-get update && apt-get install -y \
6
+ build-essential \
7
+ curl \
8
+ software-properties-common \
9
+ git \
10
+ && rm -rf /var/lib/apt/lists/*
11
+
12
+ COPY requirements.txt ./
13
+ COPY src/ ./src/
14
+
15
+ RUN pip3 install -r requirements.txt
16
+
17
+ EXPOSE 8501
18
+
19
+ HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health
20
+
21
+ ENTRYPOINT ["streamlit", "run", "src/streamlit_app.py", "--server.port=8501", "--server.address=0.0.0.0"]