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 |
| 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 -dThis 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 .envNow, install dependencies and start the development server:
pnpm install
pnpm dev
