An open API service indexing awesome lists of open source software.

https://github.com/mk-2206/finwise-app

The ultimate financial companion for content creators, influencers, and digital entrepreneurs.
https://github.com/mk-2206/finwise-app

app banking chart finance gamified h2database heroku java maven spring-boot

Last synced: about 2 months ago
JSON representation

The ultimate financial companion for content creators, influencers, and digital entrepreneurs.

Awesome Lists containing this project

README

          

# ๐Ÿ’ธ FinWise - Creator Banking Application

> **A Spring Boot-based financial management platform with gamified UI, designed specifically for content creators, freelancers, and digital entrepreneurs.**

[![Live Demo](https://img.shields.io/badge/๐Ÿš€_Live_Demo-Available-brightgreen)](https://finwise-springboot-app-665d5dc86747.herokuapp.com)
[![GitHub Stars](https://img.shields.io/github/stars/MK-2206/FINWISE-APP)](https://github.com/MK-2206/FINWISE-APP/stargazers)
[![Spring Boot](https://img.shields.io/badge/Spring_Boot-6DB33F?style=flat&logo=spring&logoColor=white)](https://spring.io/projects/spring-boot)
[![Java](https://img.shields.io/badge/Java-17-ED8B00?style=flat&logo=openjdk&logoColor=white)](https://openjdk.org/)
[![License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)


FinWise Dashboard Preview
FinWise Dashboard Preview
FinWise Dashboard Preview
FinWise Dashboard Preview
FinWise Dashboard Preview
FinWise Dashboard Preview

**Visit the [live demo](https://finwise-springboot-app-665d5dc86747.herokuapp.com) to see the full interface!**

---

## ๐ŸŽฏ What is FinWise?

FinWise is a full-stack banking application that transforms chaotic creator finances into an organized, gamified experience. Built with Spring Boot backend and modern frontend technologies, it's designed for content creators who juggle multiple income streams and irregular earnings.

### โœจ **Why FinWise?**
- ๐Ÿ’ณ **Professional Banking Features** - Account management with real database persistence
- ๐Ÿ“Š **Creator-Focused Analytics** - Track income streams, expenses, and financial goals
- ๐ŸŽฎ **Gamified Experience** - Level up system and achievement unlocks
- ๐Ÿ’ก **Smart Financial Tools** - Tax calculators, investment analyzers, brand deal evaluators
- ๐Ÿš€ **Real-time Updates** - Live financial summaries and progress tracking

---

## ๐ŸŒŸ Features

### ๐Ÿ’ฐ **Core Banking Operations**
- **Account Management** - Create accounts with initial balances
- **Deposit & Withdraw** - Real-time balance updates via REST API
- **Transaction History** - Complete audit trail of all financial activities
- **Multi-Account Support** - Separate business and personal accounts

### ๐Ÿ“Š **Creator Analytics Dashboard**
- **Income Tracking** - Multiple revenue streams (sponsorships, ad revenue, merchandise)
- **Expense Categorization** - Creator-specific expense categories
- **Financial Summary Cards** - Real-time profit/loss calculations
- **Chart.js Visualizations** - Beautiful charts for income trends

### ๐ŸŽฏ **Creator-Specific Tools**
- **Investment Calculator** - ROI analysis for equipment, courses, trips
- **Tax Estimator** - Quarterly tax calculations for freelancers
- **Brand Deal Calculator** - Evaluate sponsorship opportunities
- **Creator Goals** - Visual progress tracking with animated bars

### ๐ŸŽฎ **Gamification System**
- **XP & Leveling** - Earn experience points for financial activities
- **Creator Ranks** - Progress from "Rising Creator" to "Creator Master"
- **Achievement Badges** - Unlock milestones as you grow
- **Progress Celebrations** - Confetti animations and motivational messages

---

## ๐Ÿš€ Tech Stack

| Backend | Database | Frontend | Build Tool | Deployment |
|---------|----------|----------|------------|------------|
| ![Spring Boot](https://img.shields.io/badge/Spring_Boot-6DB33F?style=for-the-badge&logo=spring&logoColor=white) | ![H2](https://img.shields.io/badge/H2-316192?style=for-the-badge&logo=h2&logoColor=white) | ![HTML5](https://img.shields.io/badge/HTML5-E34F26?style=for-the-badge&logo=html5&logoColor=white) | ![Maven](https://img.shields.io/badge/Maven-C71A36?style=for-the-badge&logo=apache-maven&logoColor=white) | ![Heroku](https://img.shields.io/badge/Heroku-430098?style=for-the-badge&logo=heroku&logoColor=white) |
| ![Java](https://img.shields.io/badge/Java-17-ED8B00?style=for-the-badge&logo=openjdk&logoColor=white) | ![JPA](https://img.shields.io/badge/JPA-59666C?style=for-the-badge&logo=hibernate&logoColor=white) | ![JavaScript](https://img.shields.io/badge/JavaScript-F7DF1E?style=for-the-badge&logo=javascript&logoColor=black) | ![Spring Boot](https://img.shields.io/badge/Spring_Boot_Maven-6DB33F?style=for-the-badge&logo=spring&logoColor=white) | ![PostgreSQL](https://img.shields.io/badge/PostgreSQL-316192?style=for-the-badge&logo=postgresql&logoColor=white) |

### Architecture Overview
- **Backend**: Spring Boot REST API with Java 17
- **Database**: H2 in-memory (development) / PostgreSQL (production)
- **ORM**: Spring Data JPA with Hibernate
- **Frontend**: Vanilla JavaScript with Chart.js for analytics
- **Styling**: Custom CSS with glassmorphism design patterns
- **Build**: Maven for dependency management
- **Deployment**: Heroku with PostgreSQL add-on

---

## ๐Ÿงช Quick Start

### Prerequisites
- **Java 17+** (for Spring Boot backend)
- **Maven 3.6+** (for dependency management)

### Local Setup Instructions

1. **Clone the repository**
```bash
git clone https://github.com/MK-2206/FINWISE-APP.git
cd FINWISE-APP
```

2. **Run using Maven**
```bash
# Using Maven wrapper (recommended)
./mvnw spring-boot:run

# Or using installed Maven
mvn spring-boot:run
```

3. **Access the application**
```
๐ŸŒ http://localhost:8080
```

4. **Or visit live demo**
```
๐Ÿš€ https://finwise-springboot-app-665d5dc86747.herokuapp.com
```

### First Time Setup
1. ๐Ÿฆ Create your first account with initial balance
2. ๐Ÿ’ฐ Make some deposits to see the system in action
3. ๐Ÿ“Š Explore the creator dashboard and analytics
4. ๐ŸŽฏ Set up financial goals and watch progress bars
5. ๐ŸŽ‰ Level up by completing financial activities!

---

## ๐Ÿ“‚ Project Structure

```
FINWISE-APP/
โ”œโ”€โ”€ src/
โ”‚ โ”œโ”€โ”€ main/
โ”‚ โ”‚ โ”œโ”€โ”€ java/com/marcoslombog/mybank/
โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ App.java # Main Spring Boot Application
โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ controller/
โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ AccountController.java # REST API endpoints
โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ model/
โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ Account.java # JPA Entity
โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ repository/
โ”‚ โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ AccountRepository.java # Data Access Layer
โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ exception/
โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ ResourceNotFoundException.java
โ”‚ โ”‚ โ””โ”€โ”€ resources/
โ”‚ โ”‚ โ”œโ”€โ”€ application.properties # Spring Boot configuration
โ”‚ โ”‚ โ”œโ”€โ”€ data.sql # Initial database setup
โ”‚ โ”‚ โ””โ”€โ”€ static/
โ”‚ โ”‚ โ””โ”€โ”€ index.html # Frontend application
โ”‚ โ””โ”€โ”€ test/
โ”‚ โ””โ”€โ”€ java/ # Unit tests
โ”œโ”€โ”€ target/ # Compiled classes
โ”œโ”€โ”€ pom.xml # Maven dependencies
โ””โ”€โ”€ README.md
```

---

## ๐Ÿง‘โ€๐Ÿ’ป API Documentation

### REST Endpoints

| Method | Endpoint | Description | Request Body |
|--------|----------|-------------|--------------|
| `GET` | `/accounts/all` | List all accounts | - |
| `GET` | `/accounts/{id}` | Get account by ID | - |
| `POST` | `/accounts/new` | Create new account | `{"name": "John Doe", "balance": 1000.0}` |
| `PUT` | `/accounts/{id}` | Deposit/withdraw money | `amount` (double) |

### Example API Calls

```bash
# Get all accounts
curl -X GET http://localhost:8080/accounts/all

# Create new account
curl -X POST http://localhost:8080/accounts/new \
-H "Content-Type: application/json" \
-d '{"name": "Creator Account", "balance": 5000.0}'

# Deposit money
curl -X PUT http://localhost:8080/accounts/1?amount=500.0
```

---

## ๐Ÿ“Š Frontend Features

### ๐ŸŽจ **Modern UI Components**
- **Glassmorphism Design** - Frosted glass aesthetic with backdrop blur
- **Responsive Layout** - Works perfectly on desktop, tablet, and mobile
- **Dark Theme** - Easy on the eyes for late-night financial planning
- **Smooth Animations** - CSS transitions and JavaScript-powered effects

### ๐Ÿ“ˆ **Financial Analytics**
- **Chart.js Integration** - Beautiful income and expense visualizations
- **Real-time Updates** - Data refreshes automatically via AJAX calls
- **Creator Metrics** - Specialized charts for creator economy insights
- **Goal Progress Bars** - Animated progress indicators

### ๐ŸŽฎ **Gamification Elements**
```javascript
// XP system that rewards financial activities
function updateXP(points) {
currentXP += points;
checkLevelUp();
updateProgressBar();
if (points > 50) createConfetti();
}

// Smart investment break-even analysis
function calculateBreakEven(cost, monthlyBoost) {
const months = cost / monthlyBoost;
const roi = (monthlyBoost * 12 / cost) * 100;
return { months, roi };
}
```

---

## โ˜๏ธ Deployment

### Heroku Deployment
The application is deployed on Heroku with the following configuration:

- **Web Application**: https://finwise-springboot-app-665d5dc86747.herokuapp.com
- **Database**: PostgreSQL add-on for production persistence
- **Build**: Automatic deployment from GitHub main branch
- **Environment**: Production profile with optimized settings

### Deployment Commands
```bash
# Deploy to Heroku
git push heroku main

# View logs
heroku logs --tail

# Check application status
heroku ps
```

---

## ๐Ÿค Contributing

We welcome contributions! Here's how to get started:

### ๐Ÿš€ **Quick Contribution Guide**
1. **Fork** the repository
2. **Create** a feature branch: `git checkout -b feature/amazing-feature`
3. **Commit** your changes: `git commit -m 'Add amazing feature'`
4. **Push** to the branch: `git push origin feature/amazing-feature`
5. **Open** a Pull Request

## ๐Ÿ† Achievements & Milestones

| Achievement | Description | Unlock Condition |
|-------------|-------------|------------------|
| ๐Ÿฆ **Account Creator** | Create your first bank account | Create 1 account |
| ๐Ÿ’ฐ **First Deposit** | Make your first deposit | Add funds to account |
| ๐Ÿ“Š **Analytics Explorer** | View financial dashboard | Access analytics page |
| ๐ŸŽฏ **Goal Setter** | Set your first financial goal | Create 1 goal |
| ๐Ÿš€ **Creator Level 5** | Reach Creator Master rank | Earn 2000+ XP |
| โš–๏ธ **Smart Investor** | Use investment calculator | Calculate 1 ROI |

---

## ๐Ÿ“„ License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

```
MIT License - Feel free to use, modify, and distribute!
Perfect for learning, portfolio projects, and commercial use.
```

---

## ๐Ÿ™ Acknowledgments

### ๐Ÿ’ซ **Built With Love By**
- **[MK-2206](https://github.com/MK-2206)** - Full-stack development, Spring Boot architecture, UI/UX design

---


### ๐Ÿ’Ž **Professional Creator Banking**

*"Transforming creator finances from chaos to success, one transaction at a time."*

**[โœจ Try FinWise Now](https://finwise-springboot-app-665d5dc86747.herokuapp.com)** | **[๐Ÿ”ง Contribute](https://github.com/MK-2206/FINWISE-APP/blob/main/CONTRIBUTING.md)** | **[๐Ÿ“– API Docs](https://github.com/MK-2206/FINWISE-APP/wiki)**

---

**FinWise Banking ยฉ 2025** - Built with ๐Ÿ’œ for the creator economy