Snapp is a blazing-fast, modern real-time chat application built with Next.js, PostgreSQL, and WebSockets. Designed to be lightweight, scalable, and developer-friendly, Snapp delivers seamless messaging with instant updates and a clean, responsive UI.
- ✅ Real-time messaging (WebSocket-powered)
- 💬 One-on-one and group conversations
- 🕓 Chat history stored in PostgreSQL
- 🧑🤝🧑 Online/offline presence indicators
- 🌓 Light/dark mode support
- 📱 Responsive design (mobile-first)
- 🛠️ Built with modern tools and best practices
Layer | Tech |
---|---|
Frontend | Next.js (App Router) |
Styling | Tailwind CSS + Framer Motion |
Realtime | WebSockets |
Backend API | Next.js API routes |
Auth | Auth.js with JWT sessions |
Database | PostgreSQL |
ORM | Prisma |
We use PostgreSQL via Docker. To start the database container, run:
docker-compose up -d
This will spin up a detached container defined in the docker-compose.yml.
Create a .env file in the root of the project:
cp .env.example .env
Now, install dependencies and start the development server:
pnpm install
pnpm dev