Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/josh012006/prodigy_fs_04
A real time chat application done using the WebSockets and Next.js. I've called it Echo.
https://github.com/josh012006/prodigy_fs_04
mongodb mongoose nextjs reduxtoolkit typescript websockets
Last synced: about 2 months ago
JSON representation
A real time chat application done using the WebSockets and Next.js. I've called it Echo.
- Host: GitHub
- URL: https://github.com/josh012006/prodigy_fs_04
- Owner: Josh012006
- Created: 2024-08-10T18:25:40.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-08-23T20:58:57.000Z (5 months ago)
- Last Synced: 2024-08-23T22:11:39.718Z (5 months ago)
- Topics: mongodb, mongoose, nextjs, reduxtoolkit, typescript, websockets
- Language: TypeScript
- Homepage:
- Size: 32.6 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Preview
## About the project
The project is a real-time chat app. It helped me explore websocket.## How it works
The users have conversations and groups. They also have a profile to manage their information.So how it works! Their are user, conversation, group and message models. The user can search a friend already on the app with its mail. Their conversation is then added and they can receive messages from each other using the websocket. The messages can be text, images or even videos. The messages are also saved so that the users can access the chat history.
Groups can also be created with more than 2 users if needed! It enable communication between much more users on the same subject.
## How to start
There are certain essentials steps you must follow after **cloning the project**, in other to be able to use the app properly.First you need to **create a database**.
Secondly, you must **fill the .env file in the root directory** with the good environnement variables:
MONGO_URI=
NEXT_PUBLIC_API_URL=
JWT_SECRET=Also **fill the .env file in the server file** with the good environnement variables:
MONGO_URI=Thirdly, you run the app:
**npm i** in the root directory
**npm run dev** in the root directory
**cd server && npm i**
**cd server && npm start**
**cd server && npm run watch**## Demo
You can see a demo of the app run locally on this linkedin post: https://www.linkedin.com/posts/josu%C3%A9-mongan-a7b6242b8_websocket-realtimechatapp-fullstack-activity-7232853217909370880-JCX1?utm_source=share&utm_medium=member_desktop## Hope you enjoy
Have fun, leave a star if you like please and any contribution or improvement is welcome.