Realtime chat application based on MERN stack. Users can login/register, create multiple groups, join them to chat which will be broadcasted to everyone present in that group.
- NodeJS with Express
- Prisma ORM on top of MongoDB
- React.js with React Router
- Uses WebSockets with Socket.io
- Designed and customized using Material UI
- Written in Typescript
- Step 1: Clone this repository.
- Step 2: Change your directory to the clone.
cd <folder_name>
- Step 3: Install all dependencies
npm run setup-server && npm run setup-client
- Step 3: Create .env with database connection string
cd server
touch .env
echo >> DATABASE_URL="<your_connection_string>"
- Step 3: Seed the database
cd server/prisma
node seed.js
- Step 4: Run the server
npm run serve-server
- Step 4: Run the client
npm run serve-client
In the project directory, you can run:
Installs all server dependencies listed in ./server/package.json
.
Builds the server and outputs the build files in ./server/dist
.
Starts server on port process.env.PORT
.
Installs all client dependencies listed in ./client/package.json
.
Builds the app for production to the ./client/build
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
Serves react application on PORT 3000
Distributed under the MIT License. See LICENSE.txt
for more information