{"id":25659613,"url":"https://github.com/abd-01/flask-protobuf","last_synced_at":"2026-04-13T00:10:08.586Z","repository":{"id":224332354,"uuid":"763007521","full_name":"ABD-01/Flask-Protobuf","owner":"ABD-01","description":"A Flask server to handle Protobuf Encoded Communication over MQTT","archived":false,"fork":false,"pushed_at":"2024-04-29T12:30:36.000Z","size":13512,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-05-04T12:26:28.962Z","etag":null,"topics":["bootstrap5","flask","flask-wtforms","mqtt","paho-mqtt","python3","socket-io","sphinx-doc"],"latest_commit_sha":null,"homepage":"https://abd-01.github.io/Flask-Protobuf/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ABD-01.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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-02-25T10:06:08.000Z","updated_at":"2024-05-04T10:14:18.000Z","dependencies_parsed_at":"2024-04-18T15:02:11.772Z","dependency_job_id":null,"html_url":"https://github.com/ABD-01/Flask-Protobuf","commit_stats":null,"previous_names":["abd-01/flask-protobuf"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ABD-01%2FFlask-Protobuf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ABD-01%2FFlask-Protobuf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ABD-01%2FFlask-Protobuf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ABD-01%2FFlask-Protobuf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ABD-01","download_url":"https://codeload.github.com/ABD-01/Flask-Protobuf/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240400331,"owners_count":19795333,"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":["bootstrap5","flask","flask-wtforms","mqtt","paho-mqtt","python3","socket-io","sphinx-doc"],"created_at":"2025-02-24T01:18:12.574Z","updated_at":"2026-04-13T00:10:08.493Z","avatar_url":"https://github.com/ABD-01.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CVP Protobuf Encoded Communication Testing Server.\n\n\n**Must See: [Notes on Flask, WTForms, Protocol Buffers and more…](https://abd-01.github.io/Flask-Protobuf/Notes.html)**\n\n\n\u003c!-- index.rst content start --\u003e\n\nThe CVP Proto Server is a versatile tool designed for seamless communication using Protocol Buffers (protobuf) for CVP messages. This server provides a Command-Response Commander via a Command Line Interface (CLI) and a Flask application for handling MQTT communication with CVP messages.\n\n![sequence-diagram](docs/_static/sequence-diagram-dark.svg)\n\n\n## Installation\n\nTo install the CVP Protobuf Server, download the `protoserver-1.0.0-py3-none-any.whl` file and run the following command:\n\n```bash\npip install protoserver-1.0.0-py3-none-any.whl\n```\n\n## Features\n\n- **CLI Command-Response Commander:** A terminal interface for generating command messages and decoding command response messages effortlessly based on user input. \n\nUsage:\n```bash\ncommander\n```\n\n![commander](docs/_static/commander.gif)\n\n- **Flask Application for MQTT Communication:** The Flask application is designed to offer users a user-friendly web interface, incorporating Bootstrap for an enhanced visual experience and dynamic form generation. This allows users to easily handle MQTT communication with CVP messages. The integration of Socket.IO ensures real-time updates, providing immediate feedback. This combination of technologies creates a seamless and interactive environment, simplifying the process of generating, sending and receiving messages. \nUsage:\n```bash\ntmcvp-server-flask\n```\n\n**The static depiction of Flask Application can be seen [here](https://abd-01.github.io/Flask-Protobuf/demo-protoserver.html)**\n\n## Scaling for Future Usage\n\nThe server is designed with scalability in mind, anticipating future changes and updates to the CVP protocol. It is independent of specific command subtype payloads, providing flexibility for integration with new message types or additional fields introduced in future versions.\n\nWhile the server code is designed to be independent of specific payload details, it is not agnostic to changes in message header if any occurs. I have assumed that the fields such as  `message_id`, `message_type`, `priority`, `packet_status`, etc, are present in future protocol versions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabd-01%2Fflask-protobuf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fabd-01%2Fflask-protobuf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabd-01%2Fflask-protobuf/lists"}