Skip to content

About

Planned: Kotlin + Spring Boot banking REST API, combining lessons from two Java practice projects

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 

Repository files navigation

KotlinBankingAPI (planned)

🎯 Status: Planned. This project will port the lessons from two Java/Spring Boot practice projects into a single, complete Kotlin + Spring Boot REST API.

A banking REST API built with Kotlin and Spring Boot, combining validated domain modeling with a full CRUD layer and persistence — the natural next step after practicing each half separately in Java.

🧩 Where this comes from

This project consolidates two earlier practice repos:

  • SPRINGBOOT1 — proved out the REST layer: Controller → Service architecture, dependency injection, full CRUD, proper HTTP status handling
  • SPRINGBOOT5 — proved out the domain layer: validated Account, Client, and Transaction models with correct money handling (BigDecimal), immutability, and business-rule enforcement

KotlinBankingAPI will combine both — rewritten in Kotlin — into one finished project.

🗺️ Planned Features

  • Kotlin data classes / classes for Account, Client, Transaction (porting the validation logic already proven in SPRINGBOOT5)
  • REST controllers for account operations: open account, deposit, withdraw, view transaction history (porting the pattern proven in SPRINGBOOT1)
  • Persistence via Spring Data JPA + a real database (MySQL or PostgreSQL), replacing the in-memory storage used in both practice projects
  • Proper error handling with meaningful HTTP status codes (404 / 400 / 409 for business-rule violations like insufficient balance)
  • Swagger/OpenAPI documentation
  • Unit tests for the domain logic (deposit/withdraw rules, validation)
  • (Stretch goal) Basic authentication for account access

🛠 Planned Tech Stack

  • Kotlin
  • Spring Boot (Web, Data JPA)
  • MySQL or PostgreSQL
  • Swagger/OpenAPI
  • JUnit / Kotest for testing

📝 Why Kotlin

This project is part of a deliberate effort to build Kotlin competency on top of existing Java/Spring Boot practice and strong JVM fundamentals — Kotlin appears as a requirement in several backend job postings (Accenture, Tet Digital, Eika, Gjensidige) alongside Java, making it a natural, low-risk extension of skills already demonstrated in the two source projects above.


This README is a planning placeholder. Implementation has not started yet — check back for updates, or see the linked practice projects for the groundwork already completed.

About

Planned: Kotlin + Spring Boot banking REST API, combining lessons from two Java practice projects

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors