{"id":17715638,"url":"https://github.com/mylifeismyhome/websocket","last_synced_at":"2025-04-21T04:31:20.648Z","repository":{"id":259285126,"uuid":"869025816","full_name":"Mylifeismyhome/Websocket","owner":"Mylifeismyhome","description":"Websocket Library based on mbedtls","archived":false,"fork":false,"pushed_at":"2024-11-03T17:47:08.000Z","size":1267,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-03T18:19:41.383Z","etag":null,"topics":["c-api","cmake","cpp-api","cpp11","doxygen-documentation","example","library","mbedtls","mit-license","open-source","secured","shared-library","ssl","static-library","tls","unsecured","websocket","websocket-client","websocket-server"],"latest_commit_sha":null,"homepage":"","language":"C","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/Mylifeismyhome.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-10-07T15:36:42.000Z","updated_at":"2024-11-03T17:47:12.000Z","dependencies_parsed_at":"2024-10-24T04:25:40.012Z","dependency_job_id":"495573f2-782d-41fe-a79d-368d0db6581b","html_url":"https://github.com/Mylifeismyhome/Websocket","commit_stats":{"total_commits":45,"total_committers":2,"mean_commits":22.5,"dds":"0.15555555555555556","last_synced_commit":"ff1ae60873cbe80cffa9448f90fc2c4cf8153c5b"},"previous_names":["mylifeismyhome/websocket"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mylifeismyhome%2FWebsocket","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mylifeismyhome%2FWebsocket/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mylifeismyhome%2FWebsocket/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Mylifeismyhome%2FWebsocket/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Mylifeismyhome","download_url":"https://codeload.github.com/Mylifeismyhome/Websocket/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223849432,"owners_count":17213640,"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":["c-api","cmake","cpp-api","cpp11","doxygen-documentation","example","library","mbedtls","mit-license","open-source","secured","shared-library","ssl","static-library","tls","unsecured","websocket","websocket-client","websocket-server"],"created_at":"2024-10-25T12:06:33.973Z","updated_at":"2025-04-21T04:31:20.641Z","avatar_url":"https://github.com/Mylifeismyhome.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Websocket (RFC 6455 Implementation)\n\nThis repository provides a **RFC 6455–compliant WebSocket implementation** with both C and C++ APIs, enabling effortless integration into a wide range of applications. It supports both standard (`ws://`) and secure (`wss://`) connections, utilizing [mbedTLS](https://tls.mbed.org/) for encrypted communication.\n\n## 📦 Features\n\n- **C and C++ Interfaces**  \n  Flexible APIs in both C and C++ to match your project's language needs.\n\n- **WS and WSS Support**  \n  Full support for WebSocket (WS) and secure WebSocket (WSS) connections, secured via mbedTLS.\n\n- **CMake-Based Build System**  \n  Easy configuration and compilation using CMake for seamless integration.\n\n- **Doxygen Documentation**  \n  Auto-generate API documentation with Doxygen for better clarity and onboarding.\n\n## 🧩 Supported Extensions\n\n- **permessage-deflate**  \n  Adds support for compressed messages using the permessage-deflate WebSocket extension.\n\n## ⚠️ Limitations\n\n- **Sec-WebSocket-Protocol**  \n  Currently not handled.\n\n## ⚙️ Requirements\n\n- C++11 or later\n- CMake 3.0 or later\n- **Optional**: Doxygen (for documentation)\n\n## 🚀 Building from Source\n\n```bash\ngit clone https://github.com/Mylifeismyhome/Websocket.git\ncd Websocket\nmkdir build\ncd build\ncmake -DCMAKE_CXX_FLAGS=\"-m64\" \\\n      -DENABLE_C_API=ON \\\n      -DENABLE_CPP_API=ON \\\n      -DBUILD_SHARED=ON \\\n      -DBUILD_STATIC=ON \\\n      -DEXAMPLE_C_API=ON \\\n      ../\nmake\n```\n\nThis will build both static and shared libraries, along with optional examples if enabled.\n\n## 📚 Building Documentation\n\nTo generate API documentation using Doxygen:\n\n```bash\ndoxygen ./DoxyFile\n```\n\n\u003e Make sure Doxygen is installed and available in your system's PATH.\n\n## 📄 License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmylifeismyhome%2Fwebsocket","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmylifeismyhome%2Fwebsocket","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmylifeismyhome%2Fwebsocket/lists"}