Skip to content

VirtualWallet-Wallty/service-api

Repository files navigation

This is the backend API for VirtualWallet-Wallty

Requires Java 17+, Gradle, and a running MySQL instance.

1. Clone the repository

git clone https://github.com/VirtualWallet-Wallty/service-api
cd service-api

2. Set up the database

Run the scripts from the db/ directory in order:

-- Create the schema and tables
source db/create.sql

-- Insert required seed data (currencies, exchange rates, roles, etc.)
source db/inserts.sql

Or run them directly from the links:


3. Configure application.properties

In src/main/resources/application.properties, fill in the commented-out values:

spring.application.name=virtual-wallet
spring.datasource.url=jdbc:mysql://localhost:3306/virtual_wallet
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=        # ← your MySQL username
spring.datasource.password=        # ← your MySQL password

security.jwt.secret=               # ← any long random secret string
security.jwt.expiration=3600000

exchange.api.base-url=https://v6.exchangerate-api.com/v6
exchange.api.key=                  # ← your key from exchangerate-api.com

spring.jpa.hibernate.ddl-auto=validate
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.format_sql=true
spring.jpa.database-platform=org.hibernate.dialect.MySQLDialect
spring.web.resources.add-mappings=false

Get a free ExchangeRate API key at exchangerate-api.com.


4. Run the application

./mvnw spring-boot:run

The API will be available at http://localhost:8080.



👤 Contact

🐙 GitHub Profile

💼 LinkedIn Profile

✉️ todorkrushkov.1304@gmail.com


Developed as a course project @ Technical University of Sofia

Faculty of Computer Systems and Technologies - Computer & Software Engineering

Releases

No releases published

Packages

 
 
 

Contributors

Languages