{"id":42499341,"url":"https://github.com/davebryson/menta","last_synced_at":"2026-01-28T13:02:44.584Z","repository":{"id":66466836,"uuid":"135475154","full_name":"davebryson/menta","owner":"davebryson","description":"An SDK to build permissioned blockchain applications with Tendermint","archived":false,"fork":false,"pushed_at":"2020-11-22T11:31:55.000Z","size":219,"stargazers_count":6,"open_issues_count":1,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-06-20T08:14:52.625Z","etag":null,"topics":["abci","blockchain","fun","golang","tendermint"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/davebryson.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":"2018-05-30T17:17:19.000Z","updated_at":"2020-11-22T11:31:57.000Z","dependencies_parsed_at":null,"dependency_job_id":"bea2fec2-1bab-4835-a9a7-85acc0b02658","html_url":"https://github.com/davebryson/menta","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/davebryson/menta","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davebryson%2Fmenta","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davebryson%2Fmenta/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davebryson%2Fmenta/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davebryson%2Fmenta/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/davebryson","download_url":"https://codeload.github.com/davebryson/menta/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/davebryson%2Fmenta/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28845769,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-28T13:02:32.985Z","status":"ssl_error","status_checked_at":"2026-01-28T13:02:04.945Z","response_time":57,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["abci","blockchain","fun","golang","tendermint"],"created_at":"2026-01-28T13:02:43.933Z","updated_at":"2026-01-28T13:02:44.578Z","avatar_url":"https://github.com/davebryson.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MENTA\nA *lighweight* framework for creating Tendermint (permissioned) blockchain applications. \n\nMenta is designed primarily for enterprise/permissioned blockchains where there's a need to increase confidence in transactions among parties to the systems.\n\nThis framework is for:\n* Permissioned blockchains that desire Byzantine Fault Tolerance \n* Rapid prototyping and small pilot projects\n* Folks looking to build Tendermint applications not destined for the Cosmos, or \n* Folks just wanting to learn *how* a Tendermint ABCI works\n\nMenta provides a simple API on top of Tendermint based on our experience building many Tendermint applications from scratch. It also adopts some of the code and practices from the Cosmos SDK.\n\nWhy not use [Cosmos-SDK](https://github.com/cosmos/cosmos-sdk)?  Good question. If you're building a public application or planning to deploy to Cosmos, you should definitely use it. \n\nOf course, you can always start here and port to the Cosmos SDK later. That's the magic of Tendermint ABCI!\n\n## Transaction Codec\nMenta uses protobuf for the base transaction model. It's a minimal model leaving it up to the user to decide how to encode/decode application specific messages (msg field). The Tx *wrapper* provides a way to route and transport application specific messages to menta handlers.\n\n```\n message Tx {\n   string service = 1;\n   bytes msg = 2;\n   uint32 msgid = 3\n   bytes sender = 4;\n   bytes nonce = 5;\n   bytes sig = 6;\n }\n```\n\n* **service** is use to route transactions to a specific `Service`.\n* **msg** is an encoded application specific message.  How you encode the msg is up to you.\n* **msgid** can be used to distinquish messages for decoding\n* **sender** is an optional field to store the wallet address of the sender\n* **nonce** is an optional field to store a unique transaction nonce. Often used when signing the transaction\n* **sig** is an optional field to store a cryptographic signature\n\n`tx.go` in `types` provides functionality for signing and verifying transactions.\n\n## Setup\n**Current supported Tendermint version: v0.34.0**\n\nRequires Go \u003e= 1.15\n\nGet menta: `go get -u github.com/davebryson/menta`\n\n## Example\nSee `examples/counter` for a complete example of a simple application\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavebryson%2Fmenta","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdavebryson%2Fmenta","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdavebryson%2Fmenta/lists"}