{"id":28003980,"url":"https://github.com/keefertaylor/tezoskit","last_synced_at":"2025-05-09T02:36:53.172Z","repository":{"id":56924121,"uuid":"150914276","full_name":"keefertaylor/TezosKit","owner":"keefertaylor","description":"TezosKit provides a Swift based toolbox for interacting with the Tezos blockchain","archived":false,"fork":false,"pushed_at":"2021-02-01T15:10:44.000Z","size":26823,"stargazers_count":67,"open_issues_count":15,"forks_count":8,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-05-07T18:54:26.228Z","etag":null,"topics":["blockchain","swift","tezos","tezos-blockchain"],"latest_commit_sha":null,"homepage":"","language":"Swift","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/keefertaylor.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}},"created_at":"2018-09-30T00:35:33.000Z","updated_at":"2024-06-21T22:57:12.000Z","dependencies_parsed_at":"2022-08-21T05:20:53.753Z","dependency_job_id":null,"html_url":"https://github.com/keefertaylor/TezosKit","commit_stats":null,"previous_names":[],"tags_count":35,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keefertaylor%2FTezosKit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keefertaylor%2FTezosKit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keefertaylor%2FTezosKit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keefertaylor%2FTezosKit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/keefertaylor","download_url":"https://codeload.github.com/keefertaylor/TezosKit/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253178527,"owners_count":21866547,"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":["blockchain","swift","tezos","tezos-blockchain"],"created_at":"2025-05-09T02:36:52.428Z","updated_at":"2025-05-09T02:36:53.163Z","avatar_url":"https://github.com/keefertaylor.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TezosKit\n\n[![Build Status](https://travis-ci.org/keefertaylor/TezosKit.svg?branch=master)](https://travis-ci.org/keefertaylor/TezosKit)\n[![codecov](https://codecov.io/gh/keefertaylor/TezosKit/branch/master/graph/badge.svg)](https://codecov.io/gh/keefertaylor/TezosKit)\n[![Carthage Compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)\n[![Version](https://img.shields.io/cocoapods/v/TezosKit.svg?style=flat)](http://cocoapods.org/pods/TezosKit)\n[![License](https://img.shields.io/cocoapods/l/TezosKit.svg?style=flat)](http://cocoapods.org/pods/TezosKit)\n\nTezosKit is a swift SDK that is compatible with the [Tezos Blockchain](https://tezos.com). TezosKit implements complex interaction with the blockchain, including:\n* Performing preapplication for operations\n* Automatically revealing accounts as needed\n* Batching multiple operations\n\nTezosKit provides native functionality to interact with a [Tezos node](docs/TezosNode.md) or [Conseil](docs/Conseil.md), an indexing service. TezosKit supports interaction with the chain via both closure based callbacks and Promises ([PromiseKit](https://github.com/mxcl/PromiseKit)) functionality.\n\nTezosKit is compatible with both CocoaPods and Carthage. See the installation section below for specific instructions.\n\n## QuickStart\n\n### Wallets and Accounts\nAccounts in Tezos are represented with `Wallet` objects.\n\nTo make a new wallet:\n```swift\nlet wallet = Wallet()!\nprint(\"The wallet's mnemonic is \\(wallet.mnemonic)\")\n```\n\nTo restore a wallet:\n```swift\nlet mnemonic = ...\nlet wallet = Wallet(mnemonic: mnemonic)!\n```\n\n### Interacting with the Tezos Node\nThe `TezosNodeClient` class supports interacting with a Tezos Node. Interaction can be done with closure callbacks or Promises.\n\n```swift\nlet tezosNodeClient = TezosClient()\n\n// Closure completion handler\ntezosNodeClient.getBalance(address: \"KT1BVAXZQUc4BGo3WTJ7UML6diVaEbe4bLZA\") { result in\n  switch result {\n  case .success(let balance):\n    print(\"The balance of the contract is \\(balance.humanReadableRepresentation)\")\n  case .failure(let error):\n    print(\"Error getting balance: \\(error)\")\n  }\n}\n\n// PromiseKit Promises\ntezosNodeClient.getBalance(address: \"KT1BVAXZQUc4BGo3WTJ7UML6diVaEbe4bLZA\").done { balance in\n  print(\"The balance of the contract is \\(balance.humanReadableRepresentation)\")\n} .catch { _ in\n  print(\"Couldn't get balance.\")\n}\n```\n\nLearn more about interacting with a Tezos Node in the [Tezos Node Documentation](docs/TezosNode.md).\n\n### Interacting with Conseil\nThe `ConseilClient` class supports interacting with a Conseil service. Interaction can be done with closure callbacks or Promises.\n\n```swift\nlet conseilClent = ConseilClient(...)\nlet address = \"tz1iZEKy4LaAjnTmn2RuGDf2iqdAQKnRi8kY\"\n\n// Closure completion handler\nconseilClient.originatedAccounts(from: address) { result in\n  switch result {\n    case .success(let originatedAccounts):\n      print(\"Originated Accounts:\")\n      print(result)\n    case .failure(let error):\n      print(\"Error fetching originated accounts: \\(error)\")\n  }\n}\n\n// PromiseKit Promises\nconseilClient.originatedAccounts(from: address).done { result in\n  print(\"Originated Accounts:\")\n  print(result)\n} .catch { error in\n  print(\"Error fetching originated accounts: \\(error)\")\n}\n```\n\nLearn more about interacting with a Conseil Service in the [Conseil Documentation](docs/Conseil.md).\n## Advanced Usage\nTezosKit is highly extensible for the needs of any individual project. Projects can customize RPCs and operations that are sent to the node. You can learn more about customizing TezosKit's behavior in the [Advanced Usage Documentation](docs/AdvancedFunctionality.md).\n## Installation\nYou may use either Carthage or Cocoapods to depend on TezosKit.\n### CocoaPods\nTezosKit supports installation via CocoaPods. You can depened on TezosKit by adding the following to your Podfile:\n```\npod \"TezosKit\"\n```\n### Carthage\nIf you use [Carthage](https://github.com/Carthage/Carthage) to manage your dependencies, simply add\nTezosKit to your `Cartfile`:\n```\ngithub \"keefertaylor/TezosKit\"\n```\nIf you use Carthage to build your dependencies, make sure you have added `Base58Swift.framework`, `BigInt.framework`, `MnemonicKit.framework`,  and `PromiseKit.framework`, `Sodium.framework` and `TezosCrypto.framework`, to the \"_Linked Frameworks and Libraries_\" section of your target, and have included them in your Carthage framework copying build phase.\n## Bugs / Contributions\nIf you enounter bugs or missing features in TezosKit, please feel free to open a GitHub issue. You may want to check if the work you are suggesting is planned in [future work](docs/FutureWork.md).\n\nContributions and bug fixes are appreciated. Please open a PR for any missing or erroneous functionality for which you can contribute a fix.\n\nTo get started:\nTo get set up:\n```shell\n$ brew install xcodegen # if you don't already have it\n$ xcodegen generate # Generate an XCode project from project.yml\n$ open TezosKit.xcodeproj\n```\n\n## License\nTezosKit is licensed under the permissive MIT licence.\n## See Also\n* [TezosCrypto](https://github.com/keefertaylor/TezosCrypto): A swift implementation of Tezos Cryptography\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeefertaylor%2Ftezoskit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkeefertaylor%2Ftezoskit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeefertaylor%2Ftezoskit/lists"}