Skip to content

roanrobersson/rshop-be

Repository files navigation

rShop REST API ⚙️

NPM

rShop is a REST API being built essentially with Spring Boot, with the purpose of learning some of the Spring ecosystem projects and others related to the development of REST APIs, as well as maintaining a reference repository of problem solutions, organization and good development practices. I plan to convert it to microservices architecture soon.

The project still doesn't have a concrete idea of its scope, requirements and business rules, so at the moment it only has a few features close to an E-commerce, but it can evolve into anything else.

Initially I had plans to simultaneously build a React application to consume this API, but the project is paused for now, the current project code and UI prototype can be found here: GitHub Repository | Figma prototype

Technologies used 🧬

Features 🌟

  • Authorization with OAuth 2.0
  • Category, Role, Privilege, Product and User CRUD
  • Image Upload using Amazon S3

Running locally 🔨

Prerequisites:

  • Java ^11 (full JDK not a JRE)
  • Maven ^3.8.1
  • Docker ^4.9.0 (Recommended) or a local MySQL server ^8.0.29

Steps

  1. On the command line, clone the repository

    git clone https://github.com/roanrobersson/rshop-be
  2. Enter the project folder

    cd rshop-be
  3. Download and install the MySQL server 8.0.29 or run it in a Docker container:

    • If you prefer install the MySQL server: Download MySQL
    • If you prefer a Docker container, on the command line run this command:
      docker run --name MySQL-rShop -p 3306:3306 -e MYSQL_ALLOW_EMPTY_PASSWORD=true -d mysql:8.0.29
  4. Execute the project

    mvn spring-boot:run

You can then access rshop API here: http://localhost:8080
API documentation with Swagger UI: http://localhost:8080/swagger-ui/index.html

Informations 📝

How to 📖


Back to top ^

About

A Spring Boot REST API ⚙️

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages