{"id":22740197,"url":"https://github.com/HebaHamdan2/Chatvia-app","last_synced_at":"2025-08-08T13:32:00.655Z","repository":{"id":228417442,"uuid":"773929615","full_name":"HebaHamdan2/Chatvia-app","owner":"HebaHamdan2","description":"MERN Stack real-time chat app that enables users to chat with each other and see who is online after signing up or logging in. 💬","archived":false,"fork":false,"pushed_at":"2024-03-21T02:29:38.000Z","size":1633,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-20T01:41:08.478Z","etag":null,"topics":["axios","bootstrap5","mongodb","nodejs","reactjs","render","socket-io"],"latest_commit_sha":null,"homepage":"https://chatvia-mern.onrender.com/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HebaHamdan2.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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-03-18T16:38:58.000Z","updated_at":"2025-01-05T19:44:59.000Z","dependencies_parsed_at":"2024-03-21T03:41:39.182Z","dependency_job_id":null,"html_url":"https://github.com/HebaHamdan2/Chatvia-app","commit_stats":null,"previous_names":["hebahamdan2/chatvia-mern","hebahamdan2/chatvia-app"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/HebaHamdan2/Chatvia-app","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HebaHamdan2%2FChatvia-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HebaHamdan2%2FChatvia-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HebaHamdan2%2FChatvia-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HebaHamdan2%2FChatvia-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HebaHamdan2","download_url":"https://codeload.github.com/HebaHamdan2/Chatvia-app/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HebaHamdan2%2FChatvia-app/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268834445,"owners_count":24314804,"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","status":"online","status_checked_at":"2025-08-05T02:00:12.334Z","response_time":2576,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["axios","bootstrap5","mongodb","nodejs","reactjs","render","socket-io"],"created_at":"2024-12-10T23:07:51.899Z","updated_at":"2025-08-08T13:32:00.027Z","avatar_url":"https://github.com/HebaHamdan2.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Chatvia💬\nChatvia is a real-time chat app built with the MERN stack. It features live messaging using Socket.IO, state management with Zustand, and notifications with React Toast. Users can send messages, see who's online, receive notifications, and enjoy a dynamic chat experience with a shake message effect. User accounts are personalized with unique usernames and avatars based on gender and name.\n\nhttps://github.com/HebaHamdan2/Chatvia-MERN/assets/145803526/77f30daf-4ce6-48a0-ac8b-d5aef42811f4\n\n## Demo\nHere is a working live demo: [Chatvia](https://chatvia-mern.onrender.com/).\n\n## Technologies Used\n\n- Frontend:\n\n    - React.js: Used for building the user interface and managing the application's state.\n    - React Router: Used for routing within the application.\n    - Axios: Used for making HTTP requests to the backend API.\n    - Bootstrap: Used for styling and layout of the application.\n    - Socket.IO Client: Used for real-time messaging and online user status with the server.\n    - Zustand: Used for state management, particularly for managing user conversations.\n    - React Toast: Used for displaying toast notifications.\n    - React Helmet: Used for managing document head tags.\n      \n- Backend:\n \n    - Node.js: Used as the backend server environment.\n    - Express.js: Used as the backend web application framework for Node.js.\n    - MongoDB: Used as the database to store application data.\n    - Mongoose: Used as an Object Data Modeling (ODM) library for MongoDB and Node.js.\n    - JWT (JSON Web Tokens): Used for user authentication and authorization.\n    - bcrypt.js: Used for hashing passwords before storing them in the database.\n    - Socket.IO: Used for real-time bidirectional event-based communication between clients and the server.\n  \n## Learning Experience\nThis project taught me the intricacies of real-time chat applications using Socket.IO. I gained hands-on experience with Zustand for state management, learned to run the backend and frontend on the same port, and successfully deployed the application using Render.\n  \n## Deployment\nThe app is deployed using the free hosting provided by render.\n## Inspired by\nhttps://chatvia-node.themesbrand.website/. \n\n## Setup \nClone this repo to your desktop and run npm install to install all the dependencies.\n\n**.env file**\n```\nDB=...\nSALT_ROUND=...\nSECRET=...\nNODE_ENV=...\n```\n### Build the app\n```\nnpm run build\n```\n### Start the app\n```\nnpm start\n```\n## Contributing\nFeel free to reach out for more details or to collaborate!\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FHebaHamdan2%2FChatvia-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FHebaHamdan2%2FChatvia-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FHebaHamdan2%2FChatvia-app/lists"}