Welcome to Chatter, a robust real-time chat application with enhanced features including user authentication through both Google Social Login and traditional Email/Password signup. This application is built using a powerful stack that includes Node.js, Socket.io, Express, React, Material-UI (MUI), Zustand, PostgreSQL, Prisma, and Auth0 for secure and seamless user authentication.
- Clone the Updated Repository:
$ git clone https://github.com/yeasir01/chatter.git
cd chatter
- Install Dependencies:
$ npm install
- Configure Auth0:
- Set up an Auth0 account: Auth0
- Create a new Auth0 application and obtain your credentials (client ID, client secret).
- Update the .env file with your Auth0 credentials
- Run the Application:
npm start
- Visit https://localhost:3000 in your browser. (https required for auth)
To enable Google Social Login and Email/Password signup, follow these steps:
- Auth0 Dashboard:
- Log in to your Auth0 Dashboard.
- Create a new Auth0 application.
- Configure the allowed callback URLs for your application.
- Update .env file:
REACT_APP_AUTH0_DOMAIN=your-auth0-domain
REACT_APP_AUTH0_CLIENT_ID=your-client-id
REACT_APP_AUTH0_REDIRECT_URI=http://localhost:3000/callback
REACT_APP_AUTH0_AUDIENCE=https://your-api-audience
- Utilize Socket.io for efficient and reliable real-time messaging.
- Enjoy features such as typing indicators, user online status, and profile updates.
- Receive instant notifications for new messages, ensuring you stay informed.
- Engage in both group and private chats, with messages and photos sent in real-time.
- Securely store all chat data in a PostgreSQL database, ensuring data persistence.
- Personalize your experience with both dark and light themes, with more to come.
-
Backend:
- Node.js
- Express
- Socket.io
- Prisma
- PostgreSQL
-
Frontend:
- React
- Material-UI (MUI)
- Zustand
- Auth0
If you'd like to contribute to ChatApp, feel free to fork the repository, make your changes, and submit a pull request. Your contributions are highly appreciated!
This project is licensed under the MIT License - see the LICENSE file for details. Enjoy using ChatApp for seamless and dynamic communication!