Talk tide is a chatting platform similar to messenger and whatsapp. Here you can chat with any one from anywhere. You can create one on one and group chat and start chatting right away. You can send images and emoji as well. So what is stopping you just create an account and tell your friends to create account start chatting from anywhere.
- Realtime messaging with
Pusher-channel(code in feature/pusher-channel branch)
and withSocketio(code in feature/socket branch)
- Register and login authentication system
- You can create one on one chat
- You can also create group chat
- You can delete chat anytime
- You can add participant remove participant as well
- Renaming group is also possible
- You can leave from a group chat anytime
- Most importantly you can send images as well
- Responsive UI built with TailwindCSS and Shadcn ui
- Protection of sensitive routes
- Unit test with Jest and React Testing Library
- Front-End -
NextJS
TypeScript
React Query
Axios
TailwindCSS
Shadcn ui
Zustand
Zod
- Back-End -
Prisma
Mongodb
Zod
- Realtime -
Pusher Channel(feature/pusher-channel branch)
Socketio(feature/socket branch
- Auth -
Next Auth
- Unit Test -
Jest
React Testing Library
- Clone the repo
git clone https://github.com/mehedihasan2810/talk-tide.git
cd talk-tide
- Install the dependencies
npm install
Create a .env file with the following environment variables:
# DATABASE
DATABASE_URL=
# AUTH
NEXTAUTH_URL=
NEXTAUTH_SECRET=
# CLOUDINARY
NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME=
CLOUDINARY_API_KEY=
CLOUDINARY_API_SECRET=
PUSHER_APP_ID=
NEXT_PUBLIC_PUSHER_APP_KEY=
PUSHER_APP_SECRET=
NEXT_PUBLIC_PUSHER_APP_CLUSTER=
# IMGBB
IMGBB_API_KEY=
npm run dev
Open your browser and go to http://localhost:3000.