Skip to content

kumudu1996/expenseTracker

Repository files navigation

Expense Tracker

Vite + React frontend සහ Express API backend එකක් තියෙන project එක.

Local run

npm install
npm run dev

Environment variables

.env file එකේ මෙක තියෙන්න ඕන:

DATABASE_URL=postgres://USER:PASSWORD@HOST:5432/DBNAME

⚠️ DATABASE_URL password එකේ #, @, %, /, ? වගේ special characters තියෙනවා නම් URL encode කරලා දාන්න. උදා: K#c#1178K%23c%231178

Database tables (existing DB schema)

Project එක map වෙලා තියෙන්නේ මේ table names වලට:

  • expenses_category
  • expenses_person
  • expenses_transactions

ඔයා දීපු SQL එක 그대로 run කරලා schema create කරන්න:

CREATE TABLE expenses_category (
    id SERIAL PRIMARY KEY,
    name TEXT NOT NULL UNIQUE
);

CREATE TABLE expenses_person (
    id SERIAL PRIMARY KEY,
    name TEXT NOT NULL UNIQUE
);

CREATE TABLE expenses_transactions (
    id SERIAL PRIMARY KEY,
    date DATE NOT NULL,
    type TEXT NOT NULL,
    person_id INTEGER REFERENCES expenses_person(id),
    category_id INTEGER REFERENCES expenses_category(id),
    amount NUMERIC(12, 2) NOT NULL,
    description TEXT,
    created_at TIMESTAMP DEFAULT NOW()
);

INSERT INTO expenses_category (name) VALUES ('Food'), ('Bills'), ('Fuel'), ('Other');
INSERT INTO expenses_person (name) VALUES ('Mama'), ('Nona');

Deploy to Vercel

මෙ project එක Vercel-compatible වෙන්න vercel.json + api/index.ts add කරලා තියෙනවා.

  1. GitHub repo එක Vercel එකට import කරන්න.
  2. Project settings → Environment Variables වල DATABASE_URL add කරන්න.
  3. Deploy කරන්න.

Vercel:

  • frontend static build dist/public serve කරනවා
  • /api/* routes api/index.ts හරහා Express API එකට යවනවා

Releases

No releases published

Packages

 
 
 

Contributors

Languages