{"id":20078753,"url":"https://github.com/wpdas/kibi-blockchain","last_synced_at":"2026-06-13T07:31:48.693Z","repository":{"id":178456542,"uuid":"660923006","full_name":"wpdas/kibi-blockchain","owner":"wpdas","description":"A project where I'm creating a kind of my own blockchain technology using Rust.","archived":false,"fork":false,"pushed_at":"2023-07-08T07:36:03.000Z","size":272,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-02T13:14:46.877Z","etag":null,"topics":["blockchain","own","rust-lang","study"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/wpdas.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-07-01T08:23:23.000Z","updated_at":"2023-07-08T10:40:45.000Z","dependencies_parsed_at":null,"dependency_job_id":"c879b5d2-866c-46e0-a5f1-25b8ab5f7493","html_url":"https://github.com/wpdas/kibi-blockchain","commit_stats":null,"previous_names":["wpdas/own-blockchain"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/wpdas/kibi-blockchain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wpdas%2Fkibi-blockchain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wpdas%2Fkibi-blockchain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wpdas%2Fkibi-blockchain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wpdas%2Fkibi-blockchain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wpdas","download_url":"https://codeload.github.com/wpdas/kibi-blockchain/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wpdas%2Fkibi-blockchain/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34276501,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-13T02:00:06.617Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["blockchain","own","rust-lang","study"],"created_at":"2024-11-13T15:16:27.573Z","updated_at":"2026-06-13T07:31:48.656Z","avatar_url":"https://github.com/wpdas.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Kibi Blockchain Experiment\n\nThis is a project I created to simulate the operation of a Blockchain.\n\n## How to use\n\nDownload this repo, then, run `cargo run`;\n\n## Contract App\n\nI've built an experimental Contract that uses Kibi Blockchain to store / read data. To use it, follow these steps:\n\n- 1 - Clone this repo and run `cargo run`;\n\n- 2 - Go to [Kib GreetingContract](#) repo and clone it;\n\n- 3 - Inside the `kibi-greeting-contract` repo/folder, run one of the commands below:\n\nPersisting a `greeting`:\n\n```sh\n# dev-1234 = the contract id\n# set_greeting = is a contract's method\n# \"Hello from Wendz!\" = is the string value to be stored on chain under the contract\ncargo run -- call dev-1234 set_greeting \"Hello from Wendz!\"\n```\n\nViewing the current `greeting`:\n\n```sh\n# dev-1234 = the contract id\n# greeting = is a contract's field\ncargo run -- view dev-1234 greeting\n```\n\n\u003cp align=\"left\"\u003e\n  \u003cimg src=\"showcase.gif\" /\u003e\n\u003c/p\u003e\n\n## Create Account\n\n- 1 - Run `cargo run`.\n\n- 2 - Execute the command bellow to create an account (change the account value as you wish):\n\n```sh\ncurl --location 'http://localhost:8000/create_account' \\\n--header 'Content-Type: application/json' \\\n--data '{\n    \"account\": \"wendersonpires\"\n}'\n```\n\n- 2 - Execute the command bellow to get the current chain data:\n\n```sh\ncurl --location 'http://localhost:8000/chain'\n```\n\nYou can navigate over the **REST Api** to get to know more.\n\n\u003cdetails\u003e\n  \u003csummary\u003eREST Api\u003c/summary\u003e\n  \n### health check\n\n**URI:** http://localhost:8000 \u003c/br\u003e\n**METHOD:** GET \u003c/br\u003e\n\n### new transaction\n\n**URI:** http://localhost:8000/new_transaction \u003c/br\u003e\n**METHOD:** POST \u003c/br\u003e\n**BODY:**\n\n```json\n{\n  \"from\": \"public key? user name?\",\n  \"to\": \"\u003coptional for now\u003e\",\n  \"content\": \"json content\"\n}\n```\n\nO `body` que é o `dado` de cada transação é salvo na chain em forma de String (stringified JSON).\n\n### create account\n\n**URI:** http://localhost:8000/create_account \u003c/br\u003e\n**METHOD:** POST \u003c/br\u003e\n**BODY:**\n**AUTO-MINE:** true\n\n```json\n{\n  \"account\": \"wendersonpires.kib\"\n}\n```\n\nEsta rota faz executa o `mine` automaticamente pois deve-se assegurar que uma conta igual não seja registrada novamente.\n\n### mine\n\n**URI:** http://localhost:8000/mine \u003c/br\u003e\n**METHOD:** GET \u003c/br\u003e\n\n### chain\n\n**URI:** http://localhost:8000/chain \u003c/br\u003e\n**METHOD:** GET \u003c/br\u003e\n\nDurante o processo de buscar os blocos, todos os dados (`transactions` / `dado`) é convertido para JSON novamente para ser exibido ao cliente final.\n\n### contract transaction\n\n**URI:** http://localhost:8000/contract_transaction \u003c/br\u003e\n**METHOD:** POST \u003c/br\u003e\n**BODY:**\n\n```json\n{\n  \"tx_type\": \"CONTRACT\",\n  \"contract_id\": \"dev-1234\",\n  \"data\": \"stringified json content\"\n}\n```\n\nRota usada para guardar novos dados em um contrato específico.\n\n### contract_payload\n\n**URI:** http://localhost:8000/contract_payload/\u003ccontract_id\u003e \u003c/br\u003e\n**METHOD:** GET \u003c/br\u003e\n\nRota usada para buscar os dados mais atuais de um contrato.\n\n### contract_payload_json\n\n**URI:** http://localhost:8000/contract_payload_json/\u003ccontract_id\u003e \u003c/br\u003e\n**METHOD:** GET \u003c/br\u003e\n\nRota usada para buscar os dados mais atuais de um contrato e retorna-los no formato JSON.\n\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwpdas%2Fkibi-blockchain","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwpdas%2Fkibi-blockchain","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwpdas%2Fkibi-blockchain/lists"}