Welcome to the Spring Boot Template Project! This repository serves as a versatile starting point for your Java web application development needs. Our project is designed to provide you with all the fundamental components required for building robust Spring Boot applications. Here's a brief overview of what has beed included in this template:
- Thymeleaf Admin Panel: We've included a basic admin panel built with Thymeleaf and tailwind css. This panel is ready for customization and expansion to manage various aspects of your application.
- Exception Handling
- Account Handling: We've included JWT based authentication and role-based security in this project.
- Internationalization: We've included internationalization support to make it easier to create multilingual applications.
- Tests: The template project includes a testing framework to help you ensure the reliability and stability of your application through unit and integration tests. Our example tests include in-memory database support, as well as integration for spring-boot test framework.
- Profiles for Local Development and Production: Configure your project for local development and production environments with profiles that streamline setup and deployment.
- Docker Support: We've provided scripts, that will build and deploy your application to your local docker instance.
- Database versioning: we included a starting point for database schema using liquibase
We've included multiple useful .sh scripts that will help you run the application. They are located in the scripts directory.
First, start by getting the database running.
You can then populate it using the correct script - liquibase_dev.sh.
After that, you can run the app by simply executing the correct script - local_clean_run.sh
Another way to get the app running is using inteliJ. Simply recreate the run cofiguration seen in the image below:
Simply exectute the correct script - rebuild-docker.sh
Simply execute the correct script - run_test.sh.
Simply execute the correct script - hot_reload_styles.sh