{"id":15135957,"url":"https://github.com/smhussain5/flask-socketio-chat-python","last_synced_at":"2026-01-19T04:33:36.831Z","repository":{"id":216893315,"uuid":"738260538","full_name":"smhussain5/Flask-SocketIO-Chat-Python","owner":"smhussain5","description":"Full-stack real-time chat application Python/PyCharm, Flask, SocketIO, JavaScript","archived":false,"fork":false,"pushed_at":"2024-03-02T01:50:04.000Z","size":1277,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-12T08:32:55.173Z","etag":null,"topics":["chat-application","flask","flask-socketio","javascript","pycharm","python","socket-io"],"latest_commit_sha":null,"homepage":"https://flasky-chat-830ac03d48e2.herokuapp.com/","language":"HTML","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/smhussain5.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-01-02T20:17:08.000Z","updated_at":"2024-09-27T13:50:52.000Z","dependencies_parsed_at":"2024-01-16T19:53:00.441Z","dependency_job_id":"9de58039-375a-495c-b3b5-44a09ef68b32","html_url":"https://github.com/smhussain5/Flask-SocketIO-Chat-Python","commit_stats":{"total_commits":22,"total_committers":1,"mean_commits":22.0,"dds":0.0,"last_synced_commit":"5d5322eb3bd69813b5876baa42360f6acffa7f1a"},"previous_names":["smhussain5/flask-socketio-chat-python"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smhussain5%2FFlask-SocketIO-Chat-Python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smhussain5%2FFlask-SocketIO-Chat-Python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smhussain5%2FFlask-SocketIO-Chat-Python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smhussain5%2FFlask-SocketIO-Chat-Python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/smhussain5","download_url":"https://codeload.github.com/smhussain5/Flask-SocketIO-Chat-Python/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247425407,"owners_count":20936946,"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":["chat-application","flask","flask-socketio","javascript","pycharm","python","socket-io"],"created_at":"2024-09-26T06:02:28.169Z","updated_at":"2026-01-19T04:33:36.822Z","avatar_url":"https://github.com/smhussain5.png","language":"HTML","readme":"# FLASKY CHAT\n\n![Flasky Chat Python GIF Demonstration](https://github.com/smhussain5/Flask-SocketIO-Chat-Python/blob/main/FLASKY_CHAT_PYTHON.gif?raw=true)\n\n## Problem 🤔\n\nReal-time communication is a necessity in a globally connected world. Such can be achieved via Flask, Python, and WebSockets.\n\n## Solution 💡\n\nThis chat application utilizes simultaneous two-way communication channels over a single TCP connection via WebSockets to provide fast, real-time communication between users. Users must input their name and randomly-generated room code to join a session that is deleted after all users leave. Front-end utilizes Bootstrap and JavaScript to populate the message area with received/sent messages. Back-end utilizes Flask web-framework powered by Python and SocketIO to provide WebSocket capabilities.\n\n## Technologies Used ⚙\n\n- Flask\n- Gunicorn\n- Heroku\n- PyCharm\n- Python\n- SocketIO\n\n## Challenges 💢\n\nThis application was challenging to say the least! I originally wanted to deploy on PythonAnywhere but realized, after deployment, that it was not functioning as intended. After some research on their forums, I learned that they do NOT yet have support for WebSockets. After some further research, I decided to deploy to Heroku using Gunicorn, which was the exact solution I needed to restore proper functionality for the application!\n\n## Insights 💭\n\nThis project demonstrated the power of WebSockets as a way to enable simultaneous communication between users. Flask allowed me to develop the back-end with few lines of code. Opportunities to refactor could include database persistence and limiting chat rooms to a specified number of users.\n\n## Contact 📲\n\n[![Static Badge](https://img.shields.io/badge/Send%20me%20an%20email-212121?style=flat-square\u0026logo=gmail\u0026logoColor=EA4335)](mailto:shababhussain525@gmail.com?)\u003cbr\u003e\n[![Static Badge](https://img.shields.io/badge/Connect_with_me_on_LinkedIn-212121?style=flat-square\u0026logo=linkedin\u0026logoColor=0A66C2)](https://www.linkedin.com/in/shabab-h)\u003cbr\u003e\n[![Static Badge](https://img.shields.io/badge/Follow_me_on_Twitter-212121?style=flat-square\u0026logo=twitter\u0026logoColor=1D9BF0)](https://twitter.com/shussain_5)\u003cbr\u003e\n[![Static Badge](https://img.shields.io/badge/Follow_me_on_GitHub-212121?style=flat-square\u0026logo=github\u0026logoColor=FAFAFA)](https://github.com/smhussain5)\u003cbr\u003e\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmhussain5%2Fflask-socketio-chat-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsmhussain5%2Fflask-socketio-chat-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmhussain5%2Fflask-socketio-chat-python/lists"}