<Spring Boot
> + <Docker
> + <Docker-Compose
> + <React
> + <Typescript
> + <Hibernate
> + <PostgreSQL
> + <Redis
> + <Nexus
> + <Golang
>
Application Developed for Release Preparation/Management of Projects. (It is still in the development and testing phase.)
Front-end:
React
andTypescript
boilerplate filesAntD
(Ant Design) React UI libraryAxios
promise-based HTTP Client
Back-end:
SpringBoot
boilerplate filesMaven
build project structureHibernate
Object Oriented Database ManagementPostgreSQL
relational database integrationRedis
in-memory key–value database (Cache) integrationlog4j2
new generation loggingJUnit
unit tests
Platforms:
Docker
andDocker-Compose
container technologiesSonarqube
static code analysis and coverage platformTraefik
routing, load balancing, and proxy solutionNexus
repository manager
You should install above technologies and tools to your computer. You can search these instructions in Google.
Then, you should run pre-setup.bat
batch file for copying of setup files to your computer.
After this instruction, you should up docker-compose.yml like below:
docker-compose -f docker-compose.yml up
First of all you need to configure the database. Properties are located in ./backend/nexus-service/src/main/resources/application.properties
file.
By default application is using PostgreSQL and Redis databases.
Redis
database (user:user
, password:password
).
By default application is using Nexus repository manager.
Nexus
repository manager (user:admin
, password:admin
).
- Run
npm clean install --prefix frontend
to install front-end dependencies. - Run
npm run build:prod --prefix frontend
to build React/Typescript application. - Run
mvn clean compile -f backend/nexus-service
to compile a Spring Boot application. - Run
mvn install -f backend/nexus-service
to start Spring Boot application on embedded server. - Run
go clean main.go
to clean GoLang application in webhook-service folder. - Run
go install main.go
to install dependencies of GoLang application in webhook-service folder.
By default
SpringBoot backend server
will be running on port8082
.By default
Go backend server
will be running on port8080
.
npm start --prefix frontend
to start front-end server for development.npm run start:prod --prefix frontend
to start front-end server with service-workers.mvn install -f backend/nexus-service
to start Spring Boot application on embedded server.go run main.go
to compile and run GoLang application in webhook-service folder.
By default
frontend server
will be running on port3000
npm test --prefix frontend
- to run front-end unit tests.mvn test -f backend/nexus-service
- to run Spring Boot backend server tests.go test main.go
- to run GoLang backend server tests.
Back-end:
- spring-boot-starter-web
- spring-boot-starter-security
- spring-boot-starter-data-jpa
- spring-boot-starter-data-mongodb
- spring-boot-starter-hateoas
- spring-boot-starter-log4j2
- postgresql
- redis
- junit
- maven
Front-end:
Platforms:
All Docker Containers:
NexusService (Spring Boot):
WebHookService (GoLang):
Nexus Page:
Redis Page:
Sonarqube Page:
MinIO Page:
Traefik Page:
simple-project-manager
is released under the MIT License.
Developed By:
Ufuk GÜRBÜZ (@mr-ufukgurbuz)
andOktay KOÇER (@oktaykcr)