Skip to content

wiktormuller/JobJet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

361 Commits
 
 
 
 
 
 
 
 

Repository files navigation

JobJet

Interactive web application integrated with map where we can find any job in IT sector.

image image image image image image image image image


Project

This repository is divided for two main projects. It is frontend Single Page Application made in React.js and backend REST API made in ASP.NET Core.


The reason for the creation

This project is my production ready thesis project for University engineering project.


Graphical presentation of most important parts

https://imgur.com/a/NhfDCcl


Healthchecks

The local healthchecks are available at those addresses http://localhost:5002/health-checks and http://localhost:5002/health-checks-ui#/healthchecks
The production healthchecks are available at those addresses https://jobjet.azurewebsites.net/health-checks and https://jobjet.azurewebsites.net/health-checks-ui#/healthchecks

External dependencies

We use APIs like those:
- Google Geocoding API - https://developers.google.com/maps/documentation/geocoding/overview
- Project OSRM - https://project-osrm.org/
- Open Street Map - https://www.openstreetmap.org/#map=6/52.018/19.137

The backend part of application was hosted on Azure App Services, the frontend part was hosted on Netflify. The building and publishing process was handled by GitHub Actions where the newest changes from main branch were instantly deployed to App Services/Netlify. Internally the app uses Azure SQL database.


Run the backend

Go to JobJet/src/backend/JobJetRestApi
Run dotnet restore

Go to JobJet/src/backend/JobJetRestApi.Web
Run dotnet ef database update --context JobJetDbContext --project ../JobJetRestApi.Infrastructure --connection "Data Source=(LocalDb)\MSSQLLocalDB;Database=JobJet-Development;Trusted_Connection=True;"

Go to Environment Variables in your system and set Connection String for the application. Where key is: JobJetVariables_ConnectionStrings__DefaultConnection and value is Server=(LocalDb)\MSSQLLocalDB;Database=JobJet-Development;Trusted_Connection=True;

Go to Environment Variables in your system and set JWT Secret for the application, Where key is: JobJetVariables_Jwt__Secret and value is TopSecretKey123TopSecretKey123 - the value must be equals to 30 characters

Go to Environment Variables in your system and set JWT Secret for the application, Where key is: JobJetVariables_Geocoding_ApiKey and value is YourRealGeocodingApiKey - it's API key from Google Geocoding Services.

Go to JobJet/src/backend/JobJetRestApi.Web
Run dotner run

You can find Swagger document at this address https://localhost:5003/swagger/index.html


Run the frontend

Go to JobJet/src/frontend/job-jet-react-client/src
Run npm start

Frontend by default use the Production version of REST API.

You can find the app at this address http://localhost:3000/


To add new database migrations

Go to JobJet/src/backend/JobJetRestApi.Web
Run dotnet ef migrations add SomeMigrationName --context JobJetDbContext --project ../JobJetRestApi.Infrastructure -o ../JobJetRestApi.Infrastructure/Persistence/Migrations

About

Interactive map for job search and creation of job advertisements.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors