SendIM is a real-time chat application built with React, Express, and Socket.io. It allows users to create and join chat rooms for instant messaging. The app supports authentication via Supabase and features a dark mode toggle for a better user experience.
- Real-Time Messaging: Instant communication using Socket.io
 - Chat Rooms: Users can create and join different chat rooms
 - User Authentication: Email & Google OAuth authentication via Supabase
 - Dark Mode: Toggle between light and dark themes
 - Live Participants List: See active users in a chat room
 - Mobile Responsive: Optimized for both desktop and mobile users
 
- Frontend: React.js (Vite), Tailwind CSS
 - Backend: Express.js, Socket.io
 - Database & Auth: Supabase
 - Hosting: Vercel (Frontend), Supabase (Backend & Auth)
 
Make sure you have Node.js (v16+) and npm (or yarn) installed.
- 
Clone the repository
git clone https://github.com/your-username/sendim.git cd sendim - 
Install dependencies
npm install # or yarn install - 
Create a
.envfile and configure SupabaseVITE_SUPABASE_URL=your-supabase-url VITE_SUPABASE_ANON_KEY=your-supabase-anon-key
 - 
Start the development server
npm run dev
 
The app will be available at http://localhost:3000.
- Sign up or log in using email or Google OAuth.
 - Enter a chat room and start messaging in real-time.
 - Toggle dark mode for better visibility.
 - View online participants in the room.
 
- Fork the repository
 - Create a feature branch (
git checkout -b feature-name) - Commit changes (
git commit -m 'Added a new feature') - Push to GitHub (
git push origin feature-name) - Create a Pull Request
 
This project is licensed under the MIT License.
For any queries, feel free to reach out:
- Email: ramphilo@gmail.com
 - GitHub: SpectureRam
 - Live Demo: sendim.vercel.app
 
⭐ Star this repo if you found it useful! ⭐