{"id":15132948,"url":"https://github.com/dwija12903/chat-hub","last_synced_at":"2026-01-17T03:47:12.032Z","repository":{"id":256339414,"uuid":"854973706","full_name":"dwija12903/chat-hub","owner":"dwija12903","description":"Real-time chat application built with Node.js and React, featuring instant messaging, dynamic user lists, and responsive design.","archived":false,"fork":false,"pushed_at":"2024-10-09T06:31:23.000Z","size":110,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-12T02:38:37.192Z","etag":null,"topics":["expressjs","nodejs","reactjs","socket-io","tailwindcss"],"latest_commit_sha":null,"homepage":"https://chathub-qz20.onrender.com/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dwija12903.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-10T04:48:21.000Z","updated_at":"2024-10-09T06:31:26.000Z","dependencies_parsed_at":"2024-09-10T07:40:58.480Z","dependency_job_id":"b8fcbf8c-60ca-41ad-9cc0-0a71720d0b52","html_url":"https://github.com/dwija12903/chat-hub","commit_stats":{"total_commits":19,"total_committers":1,"mean_commits":19.0,"dds":0.0,"last_synced_commit":"8141f86e090e5849a8d19cec0d718ee9c164e1cb"},"previous_names":["dwija12903/chat-hub"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwija12903%2Fchat-hub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwija12903%2Fchat-hub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwija12903%2Fchat-hub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwija12903%2Fchat-hub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dwija12903","download_url":"https://codeload.github.com/dwija12903/chat-hub/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247406070,"owners_count":20933802,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["expressjs","nodejs","reactjs","socket-io","tailwindcss"],"created_at":"2024-09-26T04:41:52.735Z","updated_at":"2026-01-17T03:47:12.011Z","avatar_url":"https://github.com/dwija12903.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# **LinkUp: A Real-Time Chat Hub**\n\nA real-time chat application built using React for the frontend, Express and Socket.IO for the backend, allowing users to log in, join chats, and communicate with other users in real-time.\n\n## **Table of Contents**\n- [Features](#features)\n- [Testing the Chat](#testing-the-chat)\n- [Technologies Used](#technologies-used)\n- [Getting Started](#getting-started)\n  - [Prerequisites](#prerequisites)\n  - [Backend Setup](#backend-setup)\n  - [Frontend Setup](#frontend-setup)\n- [Usage](#usage)\n- [Contributing](#contributing)\n- [License](#license)\n\n---\n\n## **Features**\n\n- Real-time chat with Socket.IO.\n- Broadcasts when a user joins or leaves the chat.\n- Displays the list of online users.\n- Simple login interface with username authentication.\n- Responsive and modern UI built with Tailwind CSS.\n- Seamless integration between the frontend and backend.\n\n---\n\n## **Testing the Chat**\n\nTo test the real-time chat functionality: [Live Link](https://chathub-qz20.onrender.com/)\n\n1. Open the [application](https://chathub-qz20.onrender.com/) in two separate browser windows or tabs. Both should point to `https://chathub-qz20.onrender.com/`.\n   \n2. Log in with different usernames in each window.\n\n3. Send messages in one window, and you will see the messages instantly appear in the other window.\n\n4. The user list will automatically update as users join or leave the chat.\n\n---\n\n\n## **Technologies Used**\n\n### **Frontend:**\n- **React**: For building the user interface.\n- **Socket.IO Client**: To establish a WebSocket connection with the backend.\n- **Vite**: Used for bundling and serving the frontend assets.\n- **Tailwind CSS**: For styling and designing the frontend.\n\n### **Backend:**\n- **Express.js**: Node.js framework used to create the backend API.\n- **Socket.IO**: To handle real-time communication between the server and clients.\n- **dotenv**: For environment variable management.\n- **CORS**: To enable cross-origin requests from the frontend.\n\n---\n\n## **Getting Started**\n\n### **Prerequisites**\nMake sure you have the following installed:\n- **Node.js** (v12+)\n- **npm** or **yarn**\n\n---\n\n### **Backend Setup**\n\n1. Clone the repository:\n   ```bash\n   git clone https://github.com/dwija12903/chat-hub.git\n   cd chat-hub\n   ```\n\n2. Navigate to the `backend` folder:\n   ```bash\n   cd backend\n   ```\n\n3. Install the backend dependencies:\n   ```bash\n   npm install\n   ```\n\n4. Run the backend server:\n   ```bash\n   node sever.js\n   ```\n\n5. The backend server should now be running on `http://localhost:3001`.\n\n---\n\n### **Frontend Setup**\n\n1. Navigate to the `frontend` folder:\n   ```bash\n   cd frontend\n   ```\n\n2. Install the frontend dependencies:\n   ```bash\n   npm install\n   ```\n\n3. Set up the environment variables, Create a `.env` file in the `frontend` directory with the following value:\n\n```bash\nVITE_BACKEND_URL = http://localhost:3001\n```\n\n4. Start the frontend development server:\n   ```bash\n   npm run dev\n   ```\n\n5. The frontend should now be accessible at `http://localhost:5173/`.\n\n---\n\n## **Usage**\n\n1. **Login**: Enter a username on the login page to join the chat.\n2. **Chat**: Once logged in, you'll see the list of online users and the chat interface. You can send and receive messages in real-time.\n3. **Real-time Updates**:\n   - Users are notified when someone joins or leaves the chat.\n   - Messages are broadcasted instantly to all connected users.\n\n---\n\n## **Contributing**\n\nContributions are welcome! To contribute:\n\n1. Fork the repository.\n2. Create a new branch: `git checkout -b my-feature-branch`.\n3. Make your changes and commit them: `git commit -m 'Add new feature'`.\n4. Push to the branch: `git push origin my-feature-branch`.\n5. Submit a pull request.\n\n---\n\n## **License**\n\nThis project is licensed under the MIT License. See the [LICENSE](./LICENSE) file for details.\n\n---\n\n### **Author**\n\nCreated by [Dwija Panchal](https://www.linkedin.com/in/dwijapanchal).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdwija12903%2Fchat-hub","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdwija12903%2Fchat-hub","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdwija12903%2Fchat-hub/lists"}