/Skill-Up-Java-Wallet

Proyecto Wallet

Primary LanguageJava

ALKEMY JAVA TECHNICAL CHALLENGE - WALLET

Description: A Java API to manage a digital wallet.

Development team

Our mentor

Technologies used

  • Main language: Java 17
  • Framework: SpringBoot
  • Dependency manager: Maven
  • ORM: Hibernate - JPA
  • Security manager: Spring security
  • API documentation: Swagger
  • Automated testing: JUnit and Mockito
  • Manual testing: Postman
  • Data Base engine: MySQL
  • Version Control System: GIT
  • Project management: JIRA
  • Team communication: Discord

Build and Setup information

Build and run instructions

  • Clone the repo
  • On the root folder run: mvn clean install
  • Then run: mvn spring-boot:run

Consume the API

Configuration

The applications.properties file located in the resources directory sets some configuration properties that you may need to modify to run the application properly:

  • The default port is 8080. If you already have that port in used consider to modify it.
  • Set the proper username and password for your database engine.
  • By default, at initialization time, a database is created with empty tables based on the entities of the application.
  • To perform some immediately testing you may want to easily populate the database. We have provided two sql scripts located in the resources directory to alleviate the task: schema.sql and data.sql. Set the "spring.sql.init.mode" property to "always" so the database is created and populated based on those scripts.

Pre-populated users:

If you decide to run the application using the schema.sql and data.sql scripts expect to get the following preloaded users:

Admin users:

email password
nataliag@alkemy.com 12345678
maximiliano@alkemy.com 12345678
ignacio@alkemy.com 12345678
agatha@alkemy.com 12345678
alejandro@alkemy.com 12345678
julian@alkemy.com 12345678
leandro@alkemy.com 12345678
santiago@alkemy.com 12345678
pedro@alkemy.com 12345678
mariano@alkemy.com 12345678

Standard users:

email password
sergio@alkemy.com 12345678
diego@alkemy.com 12345678
eliana@alkemy.com 12345678
fernando@alkemy.com 12345678
oscar@alkemy.com 12345678
florencia@alkemy.com 12345678
alexis@alkemy.com 12345678
brian@alkemy.com 12345678
gonzalo@alkemy.com 12345678
lucas@alkemy.com 12345678