A digital platform connecting customers with rental businesses in South Africa.
# Back2Kasi
> A platform connecting people to affordable township accommodation and rental units.
---
## Table of Contents
1. Project Overview
2. Tech Stack
3. Project Structure
4. Prerequisites
5. Local Development Setup
6. Running the Application
7. Environment Configuration
8. API Overview
9. Git Workflow
10. Documentation
---
## Project Overview
Back2Kasi is a full-stack platform built to help people find and book rental units in townships. The backend exposes a RESTful API consumed by a mobile/web frontend.
**Current status:** π§ In active development
---
## Tech Stack
### Backend (`/backend`)
| Technology | Version | Purpose |
|---|---|---|
| Java | 21 | Language |
| Spring Boot | 3.5.3 | Application framework |
| Spring Data JPA | β | ORM / database access |
| Hibernate | 6.6.x | JPA implementation |
| PostgreSQL | 18.x | Relational database |
| Lombok | β | Boilerplate reduction |
| Spring Validation | β | Request validation |
| Spring DevTools | β | Auto-restart on save |
| Maven | 3.x | Build tool |
### Frontend (`/app`)
> To be documented.
---
## Project Structure
```
back2kasi/
βββ backend/ β Spring Boot REST API
β βββ src/main/java/com/back2kasi/
β βββ Back2KasiApplication.java
β βββ config/ β Cross-cutting config (Security, CORS, β¦)
β βββ common/ β Shared utilities, exceptions, response wrapper
β βββ auth/ β Authentication & authorisation
β βββ business/ β Business/owner profiles
β βββ booking/ β Reservation lifecycle
β βββ rentalunit/ β Rental unit listings & availability
β
βββ app/ β Mobile / frontend application
βββ docs/ β Project-level documentation
β βββ DEVELOPMENT_STANDARDS.md
βββ README.MD
```
---
## Prerequisites
Make sure you have the following installed before starting:
| Tool | Version | Download |
|---|---|--- β¦