Skip to content
/ shiitake Public

Backend of Shiitake System. Controls main components of account management, business interaction and products orders.

Notifications You must be signed in to change notification settings

xatyy/shiitake

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

emotio Hero Banner

Shiitake - FoodWaste Conscious Ordering System

Java Postgres Spring AWS

Description

Shiitake is a backend platform for a FoodWaste Conscious Ordering System that manages accounts creation, businesses enrollment order requests and many more. This repository represents only the Backend of the Shiitake System composed of 3 main components.

Setup

  1. Clone the repository:

git clone https://github.com/xatyy/shiitake.git

  1. Navigate to the project directory:

cd shiitake

  1. Build the project:

./mvnw clean install

Important

For this Backend to be fully operable an AWS account is required for database saving, email sending and media usage. This project is making use of the following services: S3 Bucket, Redis and SES.

Inside application-prod.properites and application-dev.properites the following lines must be changed:

spring.datasource.url= <db url>
spring.datasource.username= <db username>
spring.datasource.password= <db password>

spring.cloud.aws.credentials.access-key= <AWS Public key>
spring.cloud.aws.credentials.secret-key= <AWS Secret key>

custom.aws.s3.endpoint=https://<your own url>.eu-north-1.amazonaws.com
custom.aws.ses.endpoint=https://<your own url>.eu-north-1.amazonaws.com

Project Structure

├── BackendApplication.java
├── configuration        # App configuration (AWS, security, Swagger, WebSocket)
├── controller           # REST API controllers
├── dto                  # Data Transfer Objects
├── exceptions           # Custom exceptions and error handling
├── mapper               # Model-to-DTO mappers
├── model                # JPA entities / data models
├── repository           # Database repositories
├── service              # Business logic services
├── schedule             # Scheduled tasks
├── security             # Security configuration and JWT
└── utils                # Utility classes
  • This project follows SOLID principles, layered architecture, DRY, IoC/DI, modularization, and exception handling.

Project Roadmap

  • Finish Shiitake Frontend.
  • Dockerize Full Project.
  • Create the mobile app to connect to Shiitake System.

Made with <3 by xaty.

About

Backend of Shiitake System. Controls main components of account management, business interaction and products orders.

Resources

Stars

Watchers

Forks

Languages