Skip to content

NhatTranMinh15/sun-rise

 
 

Repository files navigation

Budgeting Service System

Budgeting Service System is a project provides features for tracking and managing budget, money, users, and trading transactions.

sun-rise codecov

Quality Gate Status Bugs Code Smells Duplicated Lines (%) Reliability Rating Security Rating Technical Debt Maintainability Rating Vulnerabilities Lines of Code

Screenshot 2024-08-22 at 21 34 38

Technologies

  • Java 17
  • Spring boot 3.3.3
  • Swagger
  • PostgreSQL
  • Thymeleaf
  • Bootstrap
  • Jquery
  • Docker
  • Sonar cloud for checking clean code.

Running: You can run this project with Docker container

  • Run docker on your local machine.
  • Go to the project, run docker compose pull if you want to update images or just docker compose up on terminal/command promt, then waiting for project starting
  • The project is run on: localhost:8086/sun/
  • The postgres container is run on: localhost:5432
    Default user:
    username: admin
    password: admin
  • The PgAdmin is run on: localhost:8081
    Defaul pgAdmin user:
    username: admin@sun.com
    password: admin
    After login to PgAmin -> Register -> Create new -> Create postgres database

Current Feature

  • Init the spring boot project, setup README.md, MIT license
  • Configure Github action, apply Pull request rules
  • Setup packages, initial models and relationships
  • Added checkstyle, ci pipeline for checking maven build and test.
  • Added docker config to create docker image and container.
  • Able to run in local and with docker

Architecture

Screenshot 2024-09-13 at 21 21 04

Database Modeling

detb-service-diagram

Setting Up and Running at Local

Configuration

Include setup steps for PostgreSQL database connection, and any other necessary configurations.

  1. Set up PostgreSQL:

    • Install PostgreSQL on your system.
    • Create a new PostgreSQL database for your application.
  2. Set up environment variable:

    • Clone file .env.sample to the new file with name: .env
    • Update environment variable in file .env

Run

  1. Remember checkstyle
   ./mvnw checkstyle:checkstyle
  1. Build the Project
    ./mvnw clean install  
  1. Run the Application
    ./mvnw spring-boot:run
  1. Note

    • Test account:
        email: sun@sun.com
        password: test1234

References

Documentation & Tools

  1. Spring Boot Documentation:

  2. Swagger Documentation:

  3. PostgreSQL Documentation:

  4. Thymeleaf Documentation:

  5. Bootstrap Documentation:

  6. jQuery Documentation:

  7. Docker Documentation:

  8. SonarCloud Documentation:

Development & Deployment

  1. Maven Documentation:

  2. GitHub Actions Documentation:

  3. PgAdmin Documentation:

Best Practices & Standards

  1. Clean Code:

  2. Checkstyle Documentation:

  3. MIT License:

Additional Learning Resources

  1. Java 17 Official Documentation:

  2. SonarQube Documentation:

  3. JPA & Hibernate Documentation:

Releases

No releases published

Packages

No packages published

Languages

  • CSS 39.4%
  • Java 36.6%
  • HTML 20.0%
  • JavaScript 3.9%
  • Dockerfile 0.1%