https://github.com/spyker77/skillhunter
Web service that helps an IT newcomers find a job ASAP
https://github.com/spyker77/skillhunter
aws django django-rest-framework docker docker-compose playwright postgresql python tailwindcss
Last synced: 27 days ago
JSON representation
Web service that helps an IT newcomers find a job ASAP
- Host: GitHub
- URL: https://github.com/spyker77/skillhunter
- Owner: spyker77
- License: mit
- Created: 2020-05-19T16:24:00.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-03-20T17:33:13.000Z (about 1 year ago)
- Last Synced: 2025-04-02T00:03:03.797Z (29 days ago)
- Topics: aws, django, django-rest-framework, docker, docker-compose, playwright, postgresql, python, tailwindcss
- Language: Python
- Homepage:
- Size: 176 MB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# SkillHunter
[](https://github.com/spyker77/skillhunter/actions/workflows/main.yml)
[](https://codecov.io/gh/spyker77/skillhunter)
[](https://app.codacy.com/gh/spyker77/skillhunter/dashboard)
[](https://github.com/psf/black)
[](LICENSE)
[](CODE_OF_CONDUCT.md)SkillHunter is all about helping you and your mates identify the most in-demand skills in the job market in order to find a new position as soon as possible. Cut the bullshit and prepare yourself in the most efficient way, no need to learn everything!
What if you asked yourself the wrong question: "What do I need to learn?" Whereas a better one could be: "What I don't need to learn?" The latter helps you save a ton of time by avoiding unnecessary work when time is the most valuable – at the very beginning of unknown – that's where the SkillHunter really shines.
## Installation
Download this project and run [Docker Compose](https://docs.docker.com/compose/install/) on your machine:
```bash
git clone https://github.com/spyker77/skillhunter.git
cd skillhunter
```## Usage
Update environment variables inside the docker-compose.yml and run the following bash commands inside downloaded project's folder – this will launch the process of building the image (if it doesn't exist), create and start containers in a detached mode.
1. Due to a forced HTTPS in production, it might be a good idea to start with **ENVIRONMENT=development** in .env file – this will allow you to avoid SSL related errors.
```bash
docker compose up -d
```2. On the first run you need to apply migrations to the fresh database:
```bash
docker compose exec web python manage.py migrate
```3. Load the job titles to parse and skills to identify:
```bash
docker compose exec web python manage.py loaddata jobs.json skills.json
```4. [Optional] Run scrapers manually to collect data about available vacancies:
```bash
docker compose exec worker python manage.py scrape_hh
docker compose exec worker python manage.py scrape_indeed
docker compose exec worker python manage.py scrape_sh
```Or rely on the Celery beat to run this and other tasks periodically – see the `CELERY_BEAT_SCHEDULE` setting.
**Tada** 🎉
By now you should be up and running. Try to reach the in your browser.
In order to prepopulate the database, you can use the test data:
```bash
docker compose exec web python manage.py loaddata scrapers_vacancy.json scrapers_vacancy_part_1.json scrapers_vacancy_part_2.json scrapers_vacancy_part_3.json
```In order to run tests:
```bash
docker compose exec -e DB_HOST=db web pytest -n auto --cov="."
```**Note** ⚠️
For the local development you may need to install **pg_config** for the **psycopg** (e.g. using `brew install postgresql`), and **Node.js** in case you want to update the packages for a production build of CSS.
## Architecture

## Contributing
Pull requests are really welcome. For major changes, please open an issue first to discuss what you would like to change.
Also, make sure to update tests as appropriate 🙏
## License
This project is licensed under the terms of the [MIT](https://github.com/spyker77/skillhunter/blob/main/LICENSE) license.