Table of Contents
- Instant Messaging: Engage in real-time text conversations with friends
- Friend Requests: Send and accept friend requests to connect with other users.
- Push Notifications: Receive instant notifications for new messages, friend requests, and more.
- Unread Message Count: Stay informed about unread messages with message count badges.
- Adaptive Layout: Tailored layout that adjusts to various screen sizes for optimal usability.
- Latest Node.js LTS
- Supabase database
- Pusher account
# Clone repo
git clone https://github.com/Carbowix/ChatMates.git
# Install the required packages
## Using NPM
npm install
## Using yarn (preferred)
yarn install
-
Add your Pusher, Supabase, Google OAuth, and Next-Auth details to
.env.example
(don't forget to rename.env
obviously) -
Push and generate the prisma schema
## Using NPM
# Generate schema
npm run postinstall
# Push schema to database
npm run prisma:push
## Using yarn (preferred)
# Generate schema
yarn postinstall
# Push schema to database
yarn prisma:push
- Run the application on development mode
## Using NPM
npm run dev
## Using yarn
yarn run dev
This project is heavily based on the nextjs-postgres-auth-starter
- React
- TypeScript
- TailwindCSS for utility CSS classes
- Next-Auth for authentication
- Pusher for websockets
- Supabase for PostgreSQL database hosting
- Prisma for database ORM
- ESLint configured with some initial rules
- Prettier to enforce consistent code style
- SYNC INTERN's gave me the energy to do this project
- ChatMates Icon by Vikram Basra