sun-rise

Sun Rise - The budgeting service system

MIT License

Stars
1
Committers
5

Budgeting Service System

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

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: [email protected]
    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

Database Modeling

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: [email protected]
        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: