Skip to content

HarshSharma1112/FinFlow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Node React MongoDB

💰 FinFlow

FinFlow is a simple full-stack web application to help users track their daily financial activities.
It supports Google OAuth authentication so users can securely sign in and manage their data.

This project is built as a learning project but follows real-world full-stack architecture patterns. Screenshot 2026-01-24 230656 ---Screenshot 2026-01-24 230711 ---Screenshot 2026-01-24 230726

🚀 Features

  • 🔐 Google OAuth 2.0 Sign-In
  • 📊 Track daily financial transactions
  • 🧾 Backend API for accounts and transactions
  • ⚙️ MongoDB database integration
  • 🌐 React frontend + Node.js backend
  • 🔒 Environment variable security (.env support)

🛠 Tech Stack

Frontend

  • React.js
  • Tailwind CSS (if used)
  • Axios

Backend

  • Node.js
  • Express.js
  • MongoDB
  • Passport.js (Google OAuth)

Auth

  • Google OAuth 2.0
  • JWT Sessions

📂 Project Structure

finflow/ │ ├── backend/ │ ├── routes/ │ ├── models/ │ ├── config/ │ ├── server.js │ └── package.json │ ├── frontend/ │ ├── src/ │ ├── public/ │ └── package.json │ ├── .gitignore ├── package.json └── README.md


⚙️ Setup Instructions

1️⃣ Clone the repository

git clone https://github.com/yourusername/finflow.git
cd finflow
2️⃣ Install dependencies
# Backend
cd backend
npm install

# Frontend
cd ../frontend
npm install
3️⃣ Configure Environment Variables
Create a file:

backend/.env
Add:

MONGO_URI=your_mongodb_uri
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
SESSION_SECRET=your_secret
PORT=5000
4️⃣ Run the project
# Backend
cd backend
npm start

# Frontend
cd ../frontend
npm start
🔐 Google OAuth Setup
Go to Google Cloud Console

Create a project

Enable OAuth Consent Screen

Create OAuth 2.0 Client ID

Add redirect URI:

http://localhost:5000/api/auth/google/callback
Copy Client ID and Secret into .env

🎯 Purpose of This Project
FinFlow is a beginner-friendly full-stack project built to:

Learn MERN stack architecture

Implement real authentication (Google OAuth)

Understand backend APIs and database integration

Practice secure environment configuration

🧠 Future Improvements
Add expense analytics charts

User dashboard

Categories for expenses

Export data to CSV

Deployment (Vercel + Render)

📜 License
This project is open-source and free to use for learning purposes.

👤 Author
Harsh Sharma
Full-stack developer & student

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors