Skip to content

In short, the RESTful API is about a Job Seeker Directory where users can have access to search jobs and directly apply. The project is written in Go Programming Language and implements the Clean Architecture Code Structure.

Notifications You must be signed in to change notification settings

daffaalex22/jobdir

Repository files navigation

jobdir

Live Preview

🔗This REST API is accessible at https://job-directory-n9ak.onrender.com

Try hitting GET https://job-directory-n9ak.onrender.com/jobs. Or check the following documentation to see the accessible routes.

For Employer

The Live Preview is deployed using a free service (https://render.com and https://app.planetscale.com/) so sometimes the app is down and need restart. If you have trouble accessing or evaluating this personal project of mine, kindly contact me at ✉️: daffaalexander.work@gmail.com, CC: daffaalex22@gmail.com

Documentation

📃Access the following URI to view list of possible routes to access:
https://app.swaggerhub.com/apis-docs/daffaalex22/jobdir/3.0

Description

This project is created during the Kemendikbud's Kampus Merdeka Program that the owner do on since August 2021. Alterra Academy is where the owner do the Independent Study (SI). Other than following a 3 hours daily live session, 3 hours daily self-learning and a daily tasks, participants are instructed to develop a RESTful API implementing all of the material that have been studied.

In short, the RESTful API is about a Job Seeker Directory where users can have access to search jobs and directly apply. The project is written in Go Programming Language and implements the Clean Architecture Code Structure.

Some of the technologies and libraries implemented on the projects are as follows:

The database management system used are both SQL and NoSQL:

  • MySQL: The main database used are relational database, this is where the API stores the entity
  • mongoDB (hasn't deployed): Used for storing log messages from echo logger

The deployment of the project uses:

  • Docker; and
  • AWS EC2
  • AWS RDS

Continuous Integration and Continuous Deployment (CI/CD) using GitHub Actions is implemented to automate the deployment process.

Clean Architecture

As previously mentioned, the project implements Clean Architecture. The four layers on the project are:

  • Domain Layer
  • Repository Layer
  • Usecase Layer
  • Controller Layer

The Diagram

golang clean architecture

From the picture above, the four rounded rectangular corresponds to each Clean Architecture layer. The slightly bolder arrow pointing from certain layer to another, pictures the dependency of the layer. For example, the domain layer (red) is pointing to repository layer (purple). This means that the repository layer imports package from domain and thus the repository layer depends on the domain layer.

About

In short, the RESTful API is about a Job Seeker Directory where users can have access to search jobs and directly apply. The project is written in Go Programming Language and implements the Clean Architecture Code Structure.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages