An open API service indexing awesome lists of open source software.

https://github.com/grjan7/job-portal

job-portal app
https://github.com/grjan7/job-portal

aggregation aggregation-pipleline demo-app fullstack javascript job job-listings job-listings-filter mongodb nodejs portal rest-api vanilla-javascript

Last synced: 3 months ago
JSON representation

job-portal app

Awesome Lists containing this project

README

        

# job-portal

> Job portal with filter options for skillsets and countries.

## Technology Used
### Backend

- Runtime: Node.js v16.17.0,
- Framework: Express.js
- DB: MongoDB

#### Endpoints

> **GET /**

- serves static files

> **GET /jobs?[countries=countries][&skillsets=skillsets][&page=page][&jobsperpage=jobsperpage]**

- serves jobs data to requests with/without queries
- maximum document served is based on jobsperpage
- used MongoDB aggregation pipeline to filter data

**Data**

```JSON
[{
"_id": "",
"id": "",
"title": ""
"description": "",
"countries": "array",
"skillsets": "array",
"organization": {
"name": "",
"logo": ""
}
}]

```

> **GET /jobs/:id**

- serves job data based on id
- used MQL to filter data

**Data**

```JSON
{
"_id": "",
"id": "",
"title": ""
"description": "",
"countries": "array",
"skillsets": "array",
"organization": {
"name": "",
"logo": ""
}
}
```

### Frontend

- HTML5, CSS3, JavaScript

**Features**
- filter panel
- joblist panel
- ad panel

### Snapshots

#### Default Load of Jobs
![Unfiltered](/snapshots/unfiltered.png)

#### Filtered By Country [countries: "India"]
![country filter](/snapshots/country-filter.png)

#### Filtered By Countries [countries: "India, USA"]
![multiple countries filter](/snapshots/countries-filter.png)

#### Filtered By Countries and Skillsets [countries: "India, USA" & skillsets: "JavaScript"]
![countries and skillsets filter](/snapshots/countries-skillsets-filter.png)