Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

15 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Expense Tracker

A full-stack expense tracker with React + Vite on the frontend and Node.js + Express + Prisma + PostgreSQL on the backend.

Tech Stack

  • Frontend: React, Vite, Tailwind CSS
  • Backend: Node.js, Express
  • Database: PostgreSQL (Neon), Prisma ORM
  • Auth: JWT, bcrypt

Local Setup

  1. Clone the repository:
git clone https://github.com/your-username/expense-tracker.git
cd expense-tracker
  1. Configure backend environment:
cd server
cp .env.example .env

Update values in server/.env.

  1. Install backend dependencies and run migrations:
npm install
npx prisma migrate dev
  1. Start backend:
npm run dev
  1. Configure frontend environment:
cd ../client
cp .env.example .env
  1. Install frontend dependencies and start frontend:
npm install
npm run dev

Render Deployment (Single Service)

This repository includes a Render Blueprint file at render.yaml.

Backend scripts used in Render

In server/package.json, deployment uses:

  • postinstall: generates Prisma client
  • prisma:migrate:deploy: applies pending migrations
  • start:render: runs migrations, then starts Express

Step-by-step

  1. Push this repo to GitHub.
  2. In Render, choose New +, then Blueprint.
  3. Select your repository so Render reads render.yaml.
  4. Render creates one web service: expense-tracker-app.
  5. Set environment variables in Render for that service:
    • DATABASE_URL (Neon connection string)
    • JWT_SECRET
    • ALLOWED_ORIGINS (optional comma-separated list)
  6. Trigger deploy.
  7. Verify API health at:
    • https://<your-service>.onrender.com/api/health
  8. Open your service root URL and test signup/login and transactions.

Notes for Neon

  • Use the Neon pooled connection string for DATABASE_URL.
  • SSL is handled by Neon connection URL parameters.
  • Prisma migrations in production are applied with prisma migrate deploy.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages