Skip to content
Parvchaudhary040Public

About

Pulse – Production-ready project management SaaS built with React, TypeScript, Node.js, Express, PostgreSQL, Docker, JWT Authentication, OAuth, and Role-Based Access Control (RBAC).

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

118 Commits

Folders and files

Repository files navigation

🚀 Pulse - AI Powered Project Management Platform

React TypeScript Node.js PostgreSQL License

Pulse is a modern project management platform that helps teams organize projects, manage tasks, and collaborate efficiently. It features secure authentication, Role-Based Access Control (RBAC), AI-powered workspace insights, and a responsive dashboard.

✨ Features

  • 🔐 JWT Authentication
  • 🌐 Google & GitHub OAuth
  • 👥 Role-Based Access Control (Owner, Admin, Manager, Member, Viewer)
  • 📁 Project Management
  • ✅ Task Management
  • 📊 Interactive Dashboard & Analytics
  • 🤖 AI Workspace Insights
  • 👤 User Profile & Settings
  • 🎨 Responsive Modern UI

🛠 Tech Stack

Frontend

  • React
  • TypeScript
  • Vite
  • Tailwind CSS

Backend

  • Node.js
  • Express.js
  • PostgreSQL
  • JWT Authentication
  • Passport.js
  • Google OAuth
  • GitHub OAuth

🚀 Run with Docker

Prerequisites

  • Docker Desktop

Clone the repository

git clone https://github.com/Parvchaudhary040/pulse.git

cd pulse

Start the application

docker compose up --build

Open:

📸 Live Demo

Preview

🔒 Role Permissions

Role Access
👑 Owner Full Access
🛡 Admin Manage Users, Projects & Tasks
📋 Manager Manage Projects & Tasks
👤 Member Manage Assigned Tasks
👀 Viewer Read Only

🌐 Live Demo

Frontend: https://pulse-zeta-fawn.vercel.app/

Backend: https://pulse-backend-nw5t.onrender.com

Deployment (Neon, Render, and Vercel)

  1. Create a Neon database and run database/schema.sql in the Neon SQL editor.
  2. Create a Render Blueprint from this repository. render.yaml builds and runs the backend service.
  3. In Render, set DATABASE_URL to Neon's pooled connection string. Set FRONTEND_URL and CORS_ORIGINS to your Vercel URL, then configure both OAuth callback URLs with your Render API URL.
  4. Import this repository into Vercel with frontend as the Root Directory. Set VITE_API_URL to https://YOUR-RENDER-SERVICE.onrender.com/api for Production, Preview, and Development. Optionally set VITE_APP_URL to your canonical Vercel URL for QR codes; otherwise the QR code uses the current deployed URL. frontend/vercel.json keeps React routes working after a page refresh.

For local Docker, no Neon credentials are required: Compose starts PostgreSQL and explicitly disables database TLS. Copy backend/.env.example only when local OAuth secrets are needed; keep DATABASE_URL empty while using the Docker database.

👨‍💻 Author

Parv Chaudhary

About

Pulse – Production-ready project management SaaS built with React, TypeScript, Node.js, Express, PostgreSQL, Docker, JWT Authentication, OAuth, and Role-Based Access Control (RBAC).

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages