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.
- 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
.
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.
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.example
file to.env
and 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:
Test the app's endpoints and chat features using tools like Postman, which supports WebSocket
and Socket.io
testing.
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.
nestjs-socketio-chat is open-sourced under the GNU General Public License.
Enjoy chatting with nestjs-socketio-chat!