Skip to content

DavidLakeT/zenith

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Zenith

- DavidLakeT

Introduction

Zenith is an implementation of a RESTful API built under the Spring Boot framework. It was developed following industry best practices as well as SOLID principles. Zenith makes use of the Hibernate ORM to perform the database management (which is handled with containers using Docker).


Table of contents


Motivation

This project was carried out with the intention of putting into practice concepts oriented towards backend development; this is why we sought to simulate in a simple way all the components that make up an API, among these:

  • Repositories, where to perform the management of CRUD operations with the system models.
  • Services, where the business logic is handled.
  • Controllers, responsible for the correct handling of requests and their responses.

Composition

Generally speaking, Zenith has as main components:

  • ORM: Hibernate.
  • Framework: Spring Boot.
  • Database: PostgreSQL.
  • Libraries: Lombok (Annotation processor), ModelMapper.

Getting Started

Prerequisites

  • Java Development Kit (JDK): Zenith requires that you have Java 8 JDK or higher installed on your system to build and run the applications.

Cloning the repository

First, you need to clone the repository from GitHub. To do this, you can open a terminal and run the following command:

git clone https://github.com/DavidLakeT/zenith.git

Setting up the database

cd docker
./service.sh up

Running the app

./gradlew bootrun

Roadmap

Zenith's goal is to simply embrace vital concepts in the world of backend development and microservices through an API that can serve a few endpoints.

Here are some of the aspects that could be considered in the future for the implementation of the project:

  • Models that can interact with each other (eg: Products + Customers).
  • Authentication + User validation.
  • Session management (JWT).

The development of Zenith is currently frozen so these features are open to public intention to contribute to open-source development.


License

Zenith is under free open source MIT License.


Call to action

Join this project and provide assistance by:

Feel free to contact me if you have any questions or contributions to make to the project.


Contact

Project Link: https://github.com/DavidLakeT/zenith

About

RESTful API implementation with Spring Boot.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published