Skip to content

Ericthilen/personal-finance-tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Personal Finance Tracker

En modern och användarvänlig webbapplikation för att hålla koll på din personliga ekonomi. Applikationen låter dig registrera inkomster och utgifter, kategorisera dem och visualisera din ekonomi genom interaktiva grafer.

🚀 Funktioner

  • Användarautentisering: Säkert inloggnings- och registreringssystem med JWT (JSON Web Tokens).
  • Transaktionshantering: Lägg till, se och radera transaktioner (inkomster och utgifter).
  • Kategorier: Skapa egna kategorier för att organisera dina utgifter och inkomster.
  • Dashboard: Tydlig översikt med summering av saldo, totala inkomster och utgifter.
  • Datavisualisering:
    • Kategoricirkel: Se fördelningen av dina utgifter per kategori.
    • Trenddiagram: Jämför inkomster och utgifter över tid.
  • Realtids-notifikationer: Direkt feedback vid handlingar som att lägga till eller radera data.
  • Responsiv Design: Fungerar lika bra på desktop som på mobila enheter.

🛠 Teknisk Stack

Backend

  • Java 25
  • Spring Boot 4.0.3
  • Spring Security (med JWT-baserad säkerhet)
  • Spring Data JPA
  • H2 Database (In-memory för enkel lokal utveckling)

Frontend

  • HTML5 & CSS3 (Custom Modern Design med mörkt tema)
  • Vanilla JavaScript (ES6+)
  • Chart.js (För grafer och visualisering)
  • Google Fonts (Inter)

🏁 Komma igång

Förutsättningar

  • Java 25 installerat.
  • Maven (medföljer via ./mvnw).

Installation & Start

  1. Klona repot:

    git clone <repository-url>
    cd personal-finance-tracker
  2. Bygg projektet:

    ./mvnw clean install
  3. Kör applikationen:

    ./mvnw spring-boot:run
  4. Öppna i webbläsaren: Gå till http://localhost:8080

⚙️ Konfiguration

Applikationen använder som standard en H2-databas i minnet, vilket innebär att all data rensas när applikationen startas om. Inställningar hittas i src/main/resources/application.properties.

JWT Hemlighet

För produktion bör app.jwt.secret i application.properties bytas ut mot en säker, slumpmässig sträng på minst 32 tecken.

📊 Databasåtkomst

Du kan se den lokala databasen via H2-konsolen när appen körs:

  • URL: http://localhost:8080/h2-console
  • JDBC URL: jdbc:h2:mem:finance_tracker
  • User: sa
  • Password: (lämna tomt)

🛤 API Endpoints (Urval)

  • POST /api/auth/register - Registrera ny användare
  • POST /api/auth/login - Logga in och få JWT-token
  • GET /api/transactions - Hämta alla transaktioner för inloggad användare
  • POST /api/transactions - Skapa ny transaktion
  • GET /api/categories - Hämta användarens kategorier
  • POST /api/categories - Skapa ny kategori

Utvecklad av Eric Thilén

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors