on-snip is a real-time collaborative messaging platform built with Next.js, Express, Socket.IO, and Redis.
- Create and join instant messaging rooms
- Real-time message updates
- Persistent message storage
- Frontend: Next.js 14, TypeScript, Tailwind CSS, React Query
- Backend: Express.js, Socket.IO
- Database: Redis (Upstash)
- Deployment: Vercel (frontend), Heroku (backend)
-
Clone the repository:
git clone https://github.com/SanyamPunia/on-snip.git cd on-snip/client
-
Install dependencies:
yarn install
-
Create a
.env
file in the client directory with the following content:UPSTASH_REDIS_REST_URL=... UPSTASH_REDIS_REST_TOKEN=...
-
Start the development server:
yarn dev
-
Navigate to the backend directory:
cd ../server
-
Install dependencies:
yarn install
-
Create a
.env
file in the server directory with the following content:REDIS_CONNECTION_STRING=... PORT=8080
-
Start the backend server:
yarn dev
- Frontend: The Next.js app is deployed on Vercel.
- Backend: The Express server is hosted on Heroku.
Visit https://on-snip.org to see the live application.
Contributions are welcome! Please feel free to submit a Pull Request.
- Redirect with captcha (priority)
This project is licensed under the MIT License - see the LICENSE file for details.