Git Product home page Git Product logo

shopapp-backend's Introduction

Shopp App - Backend

Backend system provides restful API for web or mobile.

CircleCI

SonarCloud Bugs Coverage Lines of Code

In this project I'm demonstrating you the most interesting features of Spring Cloud Project for building microservice-based architecture.

Introduction 💗💎❤️

Welcome to the backend component of shopp-app backend (e-ecommerce). This Java Spring boot backend is designed to handle the server-side logic and data processing for my application.

Prerequisites 🌀

✅ Before you begin, ensure you have met the following requirements:

  • Java Development Kit (JDK) 17 or higher installed.
  • Build tool (Maven) installed.
  • Database system (e.g., MySQL8) set up and configured.
  • Liquibase Migration Database MySql8
  • Reactive Programming with WebFlux Reactor Spring Boot.
  • Hibernate, JPA
  • Docker build
  • Restfull API
  • PostMan Testing API and Client.
  • Send message and receiver using Kafka server, Zookeeper, Broker.
  • Redis cache database
  • Flyway migration database version

✅Features

  • Provides all the necessary and most basic APIs of a website or mobile app for Shopp App and E-Ecommerce

Getting Started

Follow these steps to set up and run the backend:

  1. Clone the repository:
   git clone https://github.com/hoangtien2k3/shopapp-backend.git

1. Navigate to the project directory:

  cd shopapp-backend

2. Build the project:

  # Using Maven
  mvn clean install

3. Configure the database:

  • Update application.yml with your mysql database connection details.

4. Run Docker (docker-compose)

  cd shopapp-backend
  
  #run docker-compose
  docker-compose up -d

5. Create DATABASE shopapp and add data demo: DATA-DEMO in database Docker

6. Run the application:

  # Using Maven
  mvn spring-boot:run

Databaes Mysql8

mysql-8

Swagger-ui

http://localhost:8080/swagger-ui/index.html

swagger-ui

PostMan Client

postman-project

Technologies Used

  • Java: The primary programming language.
  • Spring Boot: Framework for building Java-based enterprise applications.
  • Maven/Gradle: Build tools for managing dependencies and building the project.
  • Database: Choose and specify the database system used (e.g., MySQL8).
  • Other Dependencies: List any additional dependencies or libraries used.
  • Cache: Using redis cache db

API Documentation

Document the API endpoints and their functionalities. You can use tools like Swagger for automated API documentation.

Contributing

If you would like to contribute to the development of this project, please follow our contribution guidelines.

Alt

License

This project is licensed under the MIT License.

MIT License
Copyright (c) 2024 Hoàng Anh Tiến

Contributors ✨


Hoàng Anh Tiến

💻 🚧 🤔 🎨 🐛

shopapp-backend's People

Contributors

hoangtien2k3 avatar renovate[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar

shopapp-backend's Issues

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • chore(deps): update openjdk docker tag to v17.0.2
  • fix(deps): update dependency io.jsonwebtoken:jjwt-jackson to v0.12.6
  • fix(deps): update dependency org.flywaydb:flyway-core to v10.15.0
  • fix(deps): update dependency org.flywaydb:flyway-mysql to v10.15.0
  • fix(deps): update dependency org.springframework.boot:spring-boot-starter-parent to v3.3.1
  • chore(deps): update openjdk docker tag to v21
  • 🔐 Create all rate-limited PRs at once 🔐

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

circleci
.circleci/config.yml
  • cimg/openjdk 17.0
docker-compose
docker-compose.yml
dockerfile
Dockerfile
  • openjdk 17
github-actions
.github/workflows/build.yml
  • actions/checkout v3
  • actions/setup-java v3
  • actions/cache v4
  • actions/cache v4
maven
pom.xml
  • org.springframework.boot:spring-boot-starter-parent 3.2.5
  • org.springframework.data:spring-data-redis 3.1.5
  • io.lettuce:lettuce-core 6.3.2.RELEASE
  • io.jsonwebtoken:jjwt-api 0.11.5
  • io.jsonwebtoken:jjwt-impl 0.11.5
  • io.jsonwebtoken:jjwt-jackson 0.11.5
  • org.projectlombok:lombok 1.18.30
  • org.mapstruct:mapstruct 1.5.5.Final
  • org.modelmapper:modelmapper 3.2.0
  • javax.activation:javax.activation-api 1.2.0
  • com.github.javafaker:javafaker 1.0.2
  • org.springdoc:springdoc-openapi-starter-webmvc-ui 2.5.0
  • org.flywaydb:flyway-core 10.13.0
  • org.flywaydb:flyway-mysql 10.13.0
  • org.projectlombok:lombok 1.18.30
  • org.projectlombok:lombok-mapstruct-binding 0.2.0
  • org.mapstruct:mapstruct-processor 1.5.5.Final
maven-wrapper
.mvn/wrapper/maven-wrapper.properties
  • maven 3.9.6
  • maven-wrapper 3.2.0

  • Check this box to trigger a request for Renovate to run again on this repository

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.