{"id":25161823,"url":"https://github.com/radekxrandom/obiadekchat","last_synced_at":"2026-05-03T01:35:50.005Z","repository":{"id":207427166,"uuid":"314862151","full_name":"radekxrandom/obiadekchat","owner":"radekxrandom","description":"[Unmaintained] Encrypted chat with many features","archived":false,"fork":false,"pushed_at":"2022-03-03T00:11:19.000Z","size":383,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-16T22:06:00.925Z","etag":null,"topics":["nodejs","react","socket-io"],"latest_commit_sha":null,"homepage":"https://obiadekchat.vercel.app/","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/radekxrandom.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}},"created_at":"2020-11-21T17:07:44.000Z","updated_at":"2023-03-10T22:47:50.000Z","dependencies_parsed_at":"2023-11-15T19:27:27.934Z","dependency_job_id":"3bcb8ebc-5f78-4559-ba4d-c38a85bf6368","html_url":"https://github.com/radekxrandom/obiadekchat","commit_stats":null,"previous_names":["radekxrandom/obiadekchat"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/radekxrandom/obiadekchat","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radekxrandom%2Fobiadekchat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radekxrandom%2Fobiadekchat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radekxrandom%2Fobiadekchat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radekxrandom%2Fobiadekchat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/radekxrandom","download_url":"https://codeload.github.com/radekxrandom/obiadekchat/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/radekxrandom%2Fobiadekchat/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263361210,"owners_count":23454891,"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":["nodejs","react","socket-io"],"created_at":"2025-02-09T02:38:44.878Z","updated_at":"2025-09-20T01:25:50.236Z","avatar_url":"https://github.com/radekxrandom.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"#### [Unmaintained, som issues don't work. It's here for nostalgic reasons only]\n\n\n\u003ch1 align=\"center\"\u003eObiadekchat - https://obiadekchat.now.sh/\u003c/h1\u003e\n\n\u003e Built with MERN stack (MongoDB, Express, React and Node) and socket.io.\n\u003e End to end RSA encrypted web chat single page application.\n\u003e User's have intuitive ways to customize their profiles and they can easily adjust security options in settings.\n\n### \u003ch2 align=\"center\"\u003e ⚡️⚡️⚡️ \u0026nbsp; [Obiadekchat](https://obiadekchat.now.sh/) ⚡️⚡️⚡️ \u003c/h2\u003e\n\n![sc](https://i.imgur.com/RySua5H.png)\n\n## 📜 \u0026nbsp; Table of contents\n\n- [Main Features](#--main-features)\n- [Technologies](#--technologies)\n- [Future goals](#--future-goals)\n- [Setup](#--setup)\n\n## 🚩 \u0026nbsp; Main Features\n\n\u003e This website enables users to message their friends without the need to provide any personal data.\n\u003e Messages are end-to-end RSA encrypted and by default are deleted 5 minutes after being viewed by the receiving user.\n\n#### User profile\n\n- **Registration and authentication**\n  - User account is generated when the new user visit the website for a first time.\n  - Because of this fact, customizing it is intuitive and easily accessible.\n- **User settings and profile customization**\n  - Users can switch to dark theme ![Picture](https://i.imgur.com/K813ckx.png)\n  - Changing username is as easy as hovering over it and typing a new one ![Picture](https://i.imgur.com/1Lbl5uq.png)\n  - Profile picture can be changed easily too ![Picture](https://i.imgur.com/su1IU6F.png)\n  - There are also settings that allow users to adjust security to their needs\n    ![Picture](https://i.imgur.com/N7lEwvj.png)\n\n#### Contacts network management\n\n- **There are real time notifications about user's contacts**\n\n![Starting page](https://i.imgur.com/vCqOH42.png)\n\n- **Adding new contacts with a Search ID**\n  - Each user has a special Search ID which can be used by others to look up his profile. ![Search ID with alert saying it was copied](https://i.imgur.com/0H3YLEr.png)\n  - To copy it users can click it or the icon next to it. Navigation with tab works too.\n  - After finding someone's profile a friend request can be send.\n  - This request can be either accepted or declined.\n- **Adding new contacts with a URL**\n  - Users can also add contacts by sharing a specially generated URL with them.\n  - Each URL can be used only once.\n  - It can be shared with friends who already use the website or with completely new users.\n    ![sc](https://i.imgur.com/kADzOac.png)\n- **Removing contacts**\n  - Deleting contacts requires only two click of the mouse.\n    ![sc](https://i.imgur.com/1jRNADl.png)\n    ![sc](https://i.imgur.com/vZMBPPm.png)\n\n#### Responsive design\n\n- **Especially for a chat application it is very important to look (and work) good on mobile devices. Please see for yourself using developer's tools in your browser**\n\n![sc](https://i.imgur.com/aPj4XQo.png)\n![sc](https://i.imgur.com/5yYUCt0.png)\n![sc](https://i.imgur.com/ftcpkoI.png)\n![sc](https://i.imgur.com/X4f7gIO.png)\n\n## 💹 \u0026nbsp; Technologies\n\n\u003e Project is created with:\n\n#### Server\n\n- Express\n- Mongoose\n- JWT Tokens for authentication\n- bcryptjs for one way password hashing\n- socket.io for real-time, bidirectional, event based communication between client and server. Oh and also for having a level of abstraction over managing WebSockets, long polling, etc.\n- mocha\n\n#### Client\n\n- React JS\n- Redux (although I am moving away from it)\n- Redux Thunk\n- Axios\n- rsuite (although I am moving away from it because of bad a11y support)\n- Hybrid Crypto JS\n- WDYR for help with optimization in development mode\n\n## 💡 \u0026nbsp; Future goals\n\n- Full a11y compliance. As of now only the Starting page is easily navigated with keyboard and has 100% correct aria labels.\n- Polish localization.\n- Being able to use one account on different devices.\n- Better test coverage.\n- Cleaner and faster code.\n- Many, many other things.\n\n## 💻 \u0026nbsp; Setup\n\nTo run this project, install it locally using npm:\n\n```\n$ git clone https://github.com/radekxrandom/obiadekchat.git\n```\n\nBackend\n\n```\n$ cd obiadekchat/back\n$ yarn install (install backend dependencies)\n$ yarn run devstart (use nodemon to auto reload on changes)\n```\n\nFrontend\n\n```\n$ cd obiadekchat/front\n$ yarn install (install frontend dependencies)\n$ yarn start\n```\n\nRemember to create .env file and populate it with constants needed for the application to work.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fradekxrandom%2Fobiadekchat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fradekxrandom%2Fobiadekchat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fradekxrandom%2Fobiadekchat/lists"}