Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Omake - Premium Expense Tracker

🚀 Live Demo: https://omake-expense-tracker.vercel.app/

Omake is a secure, full-stack financial dashboard designed to provide a visually stunning, insightful, and comprehensive experience for tracking your personal finances.

Omake Dashboard

Tech Stack

  • Frontend: React Vite Tailwind CSS Recharts
  • Backend: Java Spring Boot Spring Security Hibernate JUnit Mockito
  • Database: Neon (PostgreSQL)
  • Infrastructure: Docker

Key Features & Gallery

  • Secure Authentication: Robust JWT-based protection ensuring your financial data remains private and safe.

    Login

  • Full CRUD & History: Complete control over managing your expenses and income with an intuitive full history view.

    History

  • Interactive Visualizations: Interactive charts featuring a deterministic color hashing algorithm to ensure consistent categorical representations across various metrics and timeframes.

Getting Started

Instructions to run the Omake project locally:

Prerequisites

Ensure you have the following installed on your machine:

  • Java 17
  • Node.js (v18+)
  • Maven (optional if using the included wrapper)

1. Backend Setup

  1. Open a terminal and navigate to the backend directory:
    cd backend
  2. Set up your environment variables. You will need a standard PostgreSQL database running (locally or in the cloud) and a JWT secret for authentication. You can set these in your application.properties or via a .env file:
    • SPRING_DATASOURCE_URL (Your PostgreSQL connection URL, e.g., jdbc:postgresql://localhost:5432/omake_db)
    • SPRING_DATASOURCE_USERNAME (Your DB Username)
    • SPRING_DATASOURCE_PASSWORD (Your DB Password)
    • JWT_SECRET (A strong, random secret string for token signing)
  3. Run the Spring Boot backend server:
    ./mvnw spring-boot:run

    The server will start on http://localhost:8080.

2. Frontend Setup

  1. Open a new terminal and navigate to the frontend directory:
    cd frontend
  2. Install the necessary NPM dependencies:
    npm install
  3. Start the Vite development server:
    npm run dev

    The application will be accessible at http://localhost:5173.

3. Running Automated Tests

  • Backend tests (JUnit & Mockito):
    cd backend
    ./mvnw test
  • Frontend tests (Vitest):
    cd frontend
    npm run test

Architecture Note

Omake is strictly built upon an API-First approach. The /docs/api-spec.md acts as the definitive Single Source of Truth for the contract between the RESTful Spring Boot backend and the React Vite Single Page Application (SPA). By clearly separating frontend UI from backend business logic in a decoupled monorepo fashion, the project provides high scalability, simple maintainability, and clean code architecture.

About

Omake is a Full-Stack Premium Expense Tracker built with Spring Boot, React, and JWT Security.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages