https://github.com/atereshkov/diber-backend
Delivery Service - Spring Boot / Spring Data Jpa / Hibernate / PostgreSQL / OAuth2 Application
https://github.com/atereshkov/diber-backend
hibernate oauth oauth2-server postgresql spring spring-boot spring-data-jpa spring-security spring-security-oauth2
Last synced: 13 days ago
JSON representation
Delivery Service - Spring Boot / Spring Data Jpa / Hibernate / PostgreSQL / OAuth2 Application
- Host: GitHub
- URL: https://github.com/atereshkov/diber-backend
- Owner: atereshkov
- License: apache-2.0
- Created: 2016-12-31T15:47:32.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-06-19T15:24:15.000Z (about 7 years ago)
- Last Synced: 2025-04-13T14:11:42.607Z (3 months ago)
- Topics: hibernate, oauth, oauth2-server, postgresql, spring, spring-boot, spring-data-jpa, spring-security, spring-security-oauth2
- Language: Java
- Homepage:
- Size: 294 KB
- Stars: 25
- Watchers: 1
- Forks: 11
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Diber (backend)
## Spring Boot / Spring Data Jpa / Hibernate / PostgreSQL / OAuth2 Application 
Diber is the delivery service of goods like Uber. Anyone can register as a customer or courier.
Customers can make requests for the delivery of goods, and couriers can accept and fulfill these requests.The system provide many features, here are the most important ones:
Customer:
* Submit an order (order management)
* Viewing a single order and its status
* Appointment of the courier to your order (choose from the list of suggestions)
* Look at profiles couriers (search, filter, etc.)
* Review and evaluation of the courier after the order
* Track order status and location (after the adoption of the courier)
* Chat with the courierCourier:
* Search orders, view order list
* Submitting an application for an a specific order
* View a list of orders (all of courier orders)
* View, execution, change the status of the received order
* View your profile and reviews, rating
* Confirm profile by sending the documents (as confirmed in the VK or Twitter)
* View orders statistic
* Chat with the customer## Frameworks
This app use following Spring projects, libraries and frameworks:
* [Spring Boot](http://projects.spring.io/spring-boot/)
* [Spring Security](http://projects.spring.io/spring-security/)
* [Spring Security OAuth](http://projects.spring.io/spring-security-oauth/)
* [Spring Data JPA](http://projects.spring.io/spring-data-jpa/)
* [Hibernate](http://docs.spring.io/spring/docs/current/spring-framework-reference/html/orm.html#orm-hibernate)## How to build and run
Just run with maven
```
mvn clean package spring-boot:run
```## Spring Security and OAuth2
You can find more information about Spring Security and OAuth2 integration by [following this link](https://github.com/handioq/spring-boot-security-oauth2/).
## REST API (coming soon)
Our REST API uses [Spring Data Specifications](http://www.baeldung.com/rest-api-search-language-spring-data-specifications) that provide flexible query language and allows you to filter down to exactly the resources you need.
Auth
* [About OAuth 2.0 token based requests in this project you can read there](https://github.com/handioq/spring-boot-security-oauth2#how-to-use)
* POST /api/v1/auth/register - Register user