nestjs-socketio-chat
nestjs-socketio-chat copied to clipboard
Real-time chat application built with NestJS and Socket.io, featuring secure authentication, chat rooms, and direct messaging
nestjs-socketio-chat
Welcome to Nest.js Socket.io Chat! This project is a robust, open-source backend for building real-time chat applications. It's designed to handle everything from group discussions to private conversations on the server side, ensuring efficient and interactive communication experiences.
Features
- Authentication & Authorization: Secure sign-in process using JWT.
- Chat Rooms: Create and manage group chats for community engagement.
- Direct Messages: Personal chat functionality for private conversations.
- Real-Time Communication: Instant message delivery powered by
Socket.io.
Technologies
nestjs-socketio-chat is crafted using powerful technologies:
- NestJS: A framework for building efficient server-side apps.
- Socket.io: Makes real-time communication possible.
- TypeORM: Helps us manage the database in an organized way.
- SQLite: Stores all the data without needing a complex setup.
Getting Started
Follow these steps to set up nestjs-socketio-chat on your system:
- Clone the repository:
git clone https://github.com/vontanne/nestjs-socketio-chat.git - Install Dependencies: Navigate to the project directory and run
npm install. - Create Environment File: Copy the
.env.examplefile to.envand update the environment variables accordingly:cp .env.example .env - Set up the Database: Initialize your database with
npm run migration:run. - Launch the App:
- For development:
npm run start:dev - For production:
npm run start:prod(Note: Migrations run automatically in production mode.)
- For development:
Testing
Test the app's endpoints and chat features using tools like Postman, which supports WebSocket and Socket.io testing.
Community & Contributions
Your contributions make our project thrive. Feel free to:
- Report bugs: Submit a bug report
- Discuss improvements: Start a discussion
- Submit fixes: Create a pull request
- Propose new features: Request a feature
For more details on contributing, please review our Contributing Guidelines.
License
nestjs-socketio-chat is open-sourced under the GNU General Public License.
Enjoy chatting with nestjs-socketio-chat!