{"id":28354292,"url":"https://github.com/trumanjchan/socketchat","last_synced_at":"2026-04-05T21:05:42.651Z","repository":{"id":186887858,"uuid":"474198224","full_name":"trumanjchan/Socketchat","owner":"trumanjchan","description":"An online chat app where users can message everyone at once or privately message their friends!","archived":false,"fork":false,"pushed_at":"2023-02-10T01:11:25.000Z","size":663,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-04T08:45:47.106Z","etag":null,"topics":["expressjs","nodejs","socket-io"],"latest_commit_sha":null,"homepage":"https://wschat.onrender.com","language":"HTML","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/trumanjchan.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}},"created_at":"2022-03-26T00:07:15.000Z","updated_at":"2025-06-01T05:08:40.000Z","dependencies_parsed_at":null,"dependency_job_id":"2d7a7c9b-56bc-4dec-a266-ff3df14d97c6","html_url":"https://github.com/trumanjchan/Socketchat","commit_stats":null,"previous_names":["trumanjchan/socketchat"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/trumanjchan/Socketchat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trumanjchan%2FSocketchat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trumanjchan%2FSocketchat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trumanjchan%2FSocketchat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trumanjchan%2FSocketchat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/trumanjchan","download_url":"https://codeload.github.com/trumanjchan/Socketchat/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trumanjchan%2FSocketchat/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261205128,"owners_count":23124796,"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","socket-io"],"created_at":"2025-05-28T02:11:16.475Z","updated_at":"2025-12-30T22:55:39.162Z","avatar_url":"https://github.com/trumanjchan.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Real-time web app for chatting!\nChat globally, or click names in the player list to private message multiple people at once!\n\n### Color Codes\n  * Blue - Everything relating to you, such as messages you send\n  * Black - Incoming global messages sent by other players\n  * Gray - Incoming whisper messages sent by other players\n  * Green - Player Joins\n  * Red - Player Disconnects and Server Offline\n  * Orange - Whispering statuses only you see\n\n### Chat Features\n  * Login modal where each player can name themselves uniquely\n  * Welcome, Disconnect, and Server Offline chat announcements\n  * Player-has-joined, Received-PM, and Player-has-left sound notifications\n  * Sound toggling\n  * Total # of online users\n  * List of connected users\n  * Group private messaging\n  * '{user} is typing' chat notification\n  * Minecraft-style font\n  * Responsive web app\n\n### Run This Program Locally\n1. `npm install`\n2. `node index.js`\n\n#### Sources Used\n###### Starting Code\n  * https://socket.io/get-started/chat#introduction\n###### Nicknames\n  * https://stackoverflow.com/questions/7702461/socket-io-custom-client-id\n###### Popping\n  * https://stackoverflow.com/questions/10024866/remove-object-from-array-using-javascript\n###### Whispering\n  * https://www.codegrepper.com/code-examples/javascript/javascript+get+value+of+clicked+element\n  * https://stackoverflow.com/questions/13964155/get-javascript-object-from-array-of-objects-by-value-of-property\n###### Display static images\n  * https://stackoverflow.com/questions/15309688/express-js-how-show-image\n###### Fonts\n  * https://www.dafont.com/minecraftia.font\n###### Images\n  * https://www.flaticon.com/free-icon/christmas-sock_3764716?term=sock\u0026related_id=3764716\n  * https://www.flaticon.com/free-icon/github_4494688?term=github\u0026page=1\u0026position=45\u0026origin=search\u0026related_id=4494688\n  * https://www.flaticon.com/free-icon/sound-editing_2626036?term=sound\u0026related_id=2626036\n###### Sounds\n  * https://freesound.org/people/GabrielAraujo/sounds/242501/\n  * https://freesound.org/people/Leszek_Szary/sounds/133283/\n  * https://freesound.org/people/cabled_mess/sounds/350862/\n###### Mobile friendly\n  * https://dev.to/maciejtrzcinski/100vh-problem-with-ios-safari-3ge9\n  * https://stackoverflow.com/questions/2989263/disable-auto-zoom-in-input-text-tag-safari-on-iphone\n  * https://stackoverflow.com/questions/55867558/css-how-to-allow-the-hover-state-only-on-devices-which-support-hover","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrumanjchan%2Fsocketchat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftrumanjchan%2Fsocketchat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrumanjchan%2Fsocketchat/lists"}