Bootcamp project by DIO and sponsored by Santander.
This project is developed in Java 17, Spring Boot 3, Gradle and serves as an evaluation of the technical knowledge acquired during the bootcamp
This project is designed with support from Santander - Dashboard on Figma for APIs.
Ensure you have the following prerequisites before running the project:
- Java 17 LTS installed with properly configured environment variables (Oracle Docs)
- Git installed to clone this project (Git Docs).
Follow these steps to clone and run the project:
- Clone the project (with admin privileges) using this command:
git clone https://github.com/WillCoutinho/santander-bootcamp.git && cd santander-bootcamp
- Start the project with this command:
gradlew bootRun --args='--spring.profiles.active=dev'
- Once the project is running, you can access the Swagger documentation at the following URL:
http://localhost/swagger-ui/index.html
- To run the tests available in this project, use the following command:
gradlew test
Notes
- These instructions were tested on Windows 10
- The "postman-collections" folder contains .json files that can be imported into Postman for manual test execution
- The "prd_url" within collection "prd" is hosted on Railway and may become unavailable due to associated usage charges
classDiagram
class User {
- name: string
- account: Account
- features: Feature[]
- card: Card
- news: News[]
+ getName(): string
+ getAccount(): Account
+ getFeatures(): Feature[]
+ getCard(): Card
+ getNews(): News[]
}
class Account {
- number: string
- agency: string
- balance: number
- limit: number
+ getNumber(): string
+ getAgency(): string
+ getBalance(): number
+ getLimit(): number
}
class Feature {
- icon: string
- description: string
+ getIcon(): string
+ getDescription(): string
}
class Card {
- number: string
- limit: number
+ getNumber(): string
+ getLimit(): number
}
class News {
- icon: string
- description: string
+ getIcon(): string
+ getDescription(): string
}
User "1" *-- "1" Account
User "1" *-- "1..N" Feature
User "1" *-- "1" Card
User "1" *-- "1..N" News
Gradle - Build tool and dependency manager
Java 17 LTS - Long Term Support version of Java
JUnit5 - Unit test for Java
Mermaid - Class diagrams
PostgreSQL - Object-relational database system
Railway - Cloud infrastructure
SpringBoot - Create stand-alone Spring applications
Swagger OpenAPI - Enable Swagger for the application