Come to the java side 🚀 🌑
jar-jar-spring is a starter Java 8 using Spring Framework template to implement an API. Check out the patterns we defined this document bellow.
Icon by Chad Landenberger
Table of contents
Step by step to get this up and running
git clone https://github.com/stanleygomes/jar-jar-spring.git && cd jar-jar-spring
via maven pom.xml
Use VS Code launch configuration. Press F5.
Copy enviroment variables template
cp .env.template .env
Via docker-compose (start database, run migrations and start server)
docker-compose up
To test it on the browser, simply go to: http://localhost:8080
To file a new a feature
- create a branch from
master
branch. Use the pattern:feature/description
- file a pull request on
master
branch - since your PR is aproved, it will be merged to
master
branch - in a moment in time we'll create a release, using the pattern:
release/vX.X.X
These are some of patterns definitions to help us to keep a default arquitecture.
- Package manager: Apache Maven
- Java Version (JRE): 1.8
- Java Framework: Spring framework
- Java server: Apache Tomcat
- Database persistence: JPA
- Migrations: Run on a container described in docker-compose file: boxfuse/flyway image
- Template transpiler: Mustache templates
- Test: JUnity
- Docker compose and dockerfile attached running migrations e starting database and nodejs
Basic folder structure (MVC)
- src.main.java.com.jarjarspring.app.controller: Endpoints layer
- src.main.java.com.jarjarspring.app.service: Business logic layer
- src.main.java.com.jarjarspring.app.model: Model concept layer
- src.main.java.com.jarjarspring.app.repository: JPA repository layer
- src.main.resources.static: Images, styles, fonts and other files that can be served
- src.main.resources.template: mustache interpreted files
- src.test.java.com.jarjarspring.app.test: Junity tests