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

https://github.com/astarell/scheduleserver

A pet-project representing a student REST API schedule server
https://github.com/astarell/scheduleserver

hibernate-orm java rest-api spring-boot spring-data-jpa swagger

Last synced: 2 months ago
JSON representation

A pet-project representing a student REST API schedule server

Awesome Lists containing this project

README

          

# ScheduleServer

This is a part of a simlpe pet-project that demonstrates basic skills in working with REST API in compartment with the Spring ecosystem.

It is a REST API for managing a small educational institution. The User has the opportunity to form study groups, make a schedule, appoint people responsible for conducting classes. All CRUD-operations are available.

The project also used Swagger for documenting endpoints and providing a platform for manual testing.

Technologies:
- Spring Framework: Spring Boot, Spring Core, Spring Data JPA
- Maven
- Hibernate ORM
- PostgreSQL
- Swagger

## How to run locally
Create the 'application.properties' file and set the following configuration.

Common settings:
- server.port

For the Spring Data JPA set :
- spring.datasource.driver-class-name
- spring.datasource.url
- spring.datasource.username
- spring.datasource.password
- spring.jpa.hibernate.ddl-auto=update (or any other needed option)

## Short overview

### Swagger
To examine the documentation generated by Swagger, you need to enter the following link: {server_url}/swagger-ui/index.html#/
![ScheduleServerAPI](https://github.com/Astarell/ScheduleServer/assets/111741095/9825b702-818d-420d-a965-b13639141966)

### The database relationships schema
![ScheduleServer REST API database](https://github.com/Astarell/ScheduleServer/assets/111741095/066ba65e-8066-46eb-9201-c41468a8b520)