Skip to content

navaneedan07/chat-room

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chat now or Regret

Stuck in a dull lab? Create a room and chat in real time — messages auto-expire so conversations stay fresh.

Chat now or Regret — real-time ephemeral group chat: create or join rooms, message live with typing indicators, and auto-expire conversations.

Tech Stack

  • Frontend: React + Vite
  • Realtime client: socket.io-client
  • Styling: CSS
  • Backend: Node.js + Express
  • Realtime server: socket.io
  • Database: MongoDB (Mongoose) with TTL indexes for auto-expiry
  • Deployment: Frontend on Vercel, Backend on Render/Fly/Railway (Dockerfile included)

Quick start (local)

  1. Backend
cd backend
cp .env.example .env   # or create .env with MONGO_URI and PORT
npm install
npm run dev
  1. Frontend
cd frontend
cp .env.example .env   # or create .env.local with VITE_BACKEND_URL=http://localhost:3000
npm install
npm run dev

Open http://localhost:5173 for the frontend and http://localhost:3000 for the backend API.

Deployment

See DEPLOYMENT.md for step-by-step instructions for Vercel (frontend) and Render (backend).

Notes

  • Environment variables must be set at build time for Vite (VITE_BACKEND_URL).
  • Keep .env out of source control and set production secrets in your host's secret manager.

If you want, I can add CI/CD GitHub Actions for automatic deploys on push to main.

Future improvements

  • Add end to end encryption for messages.

Built with ❤️ by Navaneedan

About

Chat now or Regret is an app where anyone can create a room and it automatically generates a 6 character code, anyone with that code can join the chat room. Only 5 messages per second is limited and the rooms created and messages sent will be automatically deleted within a hour.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors