{"id":13727213,"url":"https://github.com/Cryptonomic/ConseilJS","last_synced_at":"2025-05-07T22:30:59.376Z","repository":{"id":32599400,"uuid":"135016498","full_name":"Cryptonomic/ConseilJS","owner":"Cryptonomic","description":"Client-side library for building decentralized applications.","archived":false,"fork":false,"pushed_at":"2024-08-28T17:55:22.000Z","size":9308,"stargazers_count":111,"open_issues_count":35,"forks_count":35,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-04-30T23:08:33.065Z","etag":null,"topics":["blockchains","decentralized-applications","javascript","tezos","typescript"],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","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/Cryptonomic.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":"audits/2020-07-09_Apriorit_Audit.pdf","citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-05-27T04:50:05.000Z","updated_at":"2024-11-01T06:55:20.000Z","dependencies_parsed_at":"2024-06-18T14:54:21.436Z","dependency_job_id":"a7e6b49c-b2fe-4bf4-aee9-d8605c82187e","html_url":"https://github.com/Cryptonomic/ConseilJS","commit_stats":{"total_commits":1264,"total_committers":26,"mean_commits":48.61538461538461,"dds":0.4208860759493671,"last_synced_commit":"ce675dc6eceaded442057c5b1db03d71bf6708c2"},"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cryptonomic%2FConseilJS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cryptonomic%2FConseilJS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cryptonomic%2FConseilJS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cryptonomic%2FConseilJS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Cryptonomic","download_url":"https://codeload.github.com/Cryptonomic/ConseilJS/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252965262,"owners_count":21832853,"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":["blockchains","decentralized-applications","javascript","tezos","typescript"],"created_at":"2024-08-03T01:03:44.380Z","updated_at":"2025-05-07T22:30:57.226Z","avatar_url":"https://github.com/Cryptonomic.png","language":"TypeScript","readme":"Note: As of January 2023, ConseilJS is maintained on a best effort basis for Tezos: https://discourse.cryptonomic.tech/t/psa-conseil-conseiljs-will-now-be-maintained-on-a-best-effort-basis-for-tezos/235/2\n\n# ConseilJS-core\n\n[![npm version](https://img.shields.io/npm/v/conseiljs.svg)](https://www.npmjs.com/package/conseiljs)\n[![npm](https://img.shields.io/npm/dm/conseiljs.svg)](https://www.npmjs.com/package/conseiljs)\n[![Build Status](https://travis-ci.org/Cryptonomic/ConseilJS.svg?branch=master)](https://travis-ci.org/Cryptonomic/ConseilJS)\n[![Coverage Status](https://coveralls.io/repos/github/Cryptonomic/ConseilJS/badge.svg?branch=master)](https://coveralls.io/github/Cryptonomic/ConseilJS?branch=master)\n[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=Cryptonomic_ConseilJS\u0026metric=alert_status)](https://sonarcloud.io/dashboard?id=Cryptonomic_ConseilJS)\n[![conseiljs](https://snyk.io/advisor/npm-package/conseiljs/badge.svg)](https://snyk.io/advisor/npm-package/conseiljs)\n\nA library for building decentralized applications in Typescript and Javascript, currently focused on the [Tezos](http://tezos.com/) platform.\n\nConseilJS connects to Tezos nodes for live chain data and operations and to [Conseil](https://github.com/Cryptonomic/Conseil) servers for high-performance analytics on blockchain data. Internally, Cryptonomic uses [Nautilus](https://github.com/Cryptonomic/Nautilus) for infrastructure deployments of these services. This is the library at the core of our products – [Arronax](https://arronax.io), [Periscope](https://periscope.arronax.io), [Harpoon](https://harpoon.arronax.io) and certainly [Galleon](https://cryptonomic.tech/galleon.html). There are [ReasonML bindings](https://github.com/Cryptonomic/ConseilJS-ReasonML-Bindings) as well.\n\nCryptonomic offers an infrastructure service - [Nautilus Cloud](https://nautilus.cloud) which enables quick access to the Tezos platform along with products that make it easier build on it.\n\n## Sub-modules\n\nAs of version 5.0.0, ConseilJS has been split into three parts: this library, which is considered to be the core, ConseilJS-softsigner and ConseilJS-ledgersigner. This was done in an effort to make the library more portable across different environments. If neither of these additional modules meet your needs, the `Signer` and `KeyStore` [interfaces](https://github.com/Cryptonomic/ConseilJS/blob/master/ConseilJS-core/src/types/ExternalInterfaces.ts) can be implemented separately. In addition to a `Signer` and a `KeyStore`, `fetch` and `logger` objects are required to be provided, see below.\n\nFor more details on how to use these libraries see their respective readme files: [ConseilJS-core](./blob/master/ConseilJS/docs/README.md), [ConseilJS-softsigner](https://github.com/Cryptonomic/ConseilJS-softsigner/blob/master/README.md), [ConseilJS-ledgersigner](https://github.com/Cryptonomic/ConseilJS-ledgersigner/blob/master/README.md). There is also an [AWS KMS signer](https://www.npmjs.com/package/@tacoinfra/tezos-kms) that is compatible with ConseilJS, maintained by [@tacoinfra](https://github.com/tacoinfra).\n\n## Use with Nodejs\n\nAdd our [NPM package](https://www.npmjs.com/package/conseiljs) to your project and a signing library.\n\n```bash\nnpm i conseiljs\nnpm i conseiljs-softsigner\n```\n\n```javascript\nimport fetch from 'node-fetch';\nimport * as log from 'loglevel';\n\nimport { registerFetch, registerLogger, Signer, TezosMessageUtils } from 'conseiljs';\nimport { KeyStoreUtils, SoftSigner } from 'conseiljs-softsigner';\n\nconst logger = log.getLogger('conseiljs');\nlogger.setLevel('debug', false);\nregisterLogger(logger);\nregisterFetch(fetch);\n\nlet signer: Signer;\nconst keyStore = await KeyStoreUtils.restoreIdentityFromSecretKey('edskRgu8wHxjwayvnmpLDDijzD3VZDoAH7ZLqJWuG4zg7LbxmSWZWhtkSyM5Uby41rGfsBGk4iPKWHSDniFyCRv3j7YFCknyHH');\nsigner = await SoftSigner.createSigner(TezosMessageUtils.writeKeyWithHint(keyStore.secretKey, 'edsk'), -1);\n```\n\n## Use with React\n\nWe have a complete [React application tutorial](https://github.com/Cryptonomic/ConseilJS-Tutorials) for you to check out.\n\n## Use with React Native\n\nProject [honeybadger](https://github.com/Cryptonomic/honeybadger), which is the basis for [Galleon Mobile](https://apps.apple.com/us/app/galleon-mobile-wallet/id1521872814) us built with ConseilJS as well. Due to limitations of react-native we re-implemented some of the necessary functionality into a [separate module](https://github.com/Cryptonomic/honeybadger/tree/trunk/src/softsigner).\n\n## Use with Web\n\n```html\n\u003chtml\u003e\n\u003chead\u003e\n    \u003cscript src=\"https://cdn.jsdelivr.net/gh/cryptonomic/conseiljs/dist-web/conseiljs.min.js\"\n        integrity=\"sha256-RsfjLoUXxZo1G4OGSlIuZEkSkVnlqn1eMvAYXwYwXXnnfMyiYg/PNWqjv4oWA2tb\"\n        crossorigin=\"anonymous\"\u003e\u003c/script\u003e\n    \u003cscript src=\"https://cdn.jsdelivr.net/gh/cryptonomic/conseiljs-softsigner/dist-web/conseiljs-softsigner.min.js\"\n        integrity=\"sha384-V1iaajn0x/SMFcZ9Y/xNQmqQSKyll6Dzt27U6OWiv8NdbHTVaHOGHdQ8g0G68HPd\"\n        crossorigin=\"anonymous\"\u003e\u003c/script\u003e\n    \u003cscript\u003e\n        //conseiljssoftsigner.\n    \u003c/script\u003e\n\u003c/head\u003e\n\u003cbody\u003e\n    ...\n\u003c/body\u003e\n\u003c/html\u003e\n```\n\nThe web version sets fetch and logger internally to `window.fetch` and `console` respectively.\n\nA fully functional sample [html page](https://github.com/Cryptonomic/ConseilJS-HTML-Example) is available too.\n\n## API Overview and Examples\n\nWe have [ready-to-use examples](https://cryptonomic.github.io/ConseilJS/) to copy/paste.\n\n## Contribute\n\nThere are many ways to contribute to this project. You can develop applications or dApps with it. You can submit bug reports or feature requests. You can ask questions about it on [r/Tezos](http://reddit.com/r/tezos/) or the [Tezos StackExchange](https://tezos.stackexchange.com). We certainly welcome pull requests as well.\n\n## Other references\n\n[Developer Handbook](https://handbook.cryptonomic.tech/)\n\n[Smart Contract Development Syllabus](https://medium.com/the-cryptonomic-aperiodical/smart-contract-development-syllabus-f285a8463a4d)\n\n[Wiki](https://github.com/Cryptonomic/ConseilJS/wiki/Tutorial:-Querying-for-Tezos-alphanet-data-using-the-ConseilJS-v2-API)\n\n[Riot Dev Channel](https://matrix.to/#/!rUwpbdwWhWgKINPyOD:cryptonomic.tech?via=cryptonomic.tech\u0026via=matrix.org\u0026via=ostez.com)\n\n[Cryptonomic Reddit](https://www.reddit.com/r/cryptonomic)\n\n[The Cryptonomic Aperiodical](https://medium.com/the-cryptonomic-aperiodical)\n\n[@CryptonomicTech](https://twitter.com/CryptonomicTech)\n","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCryptonomic%2FConseilJS","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FCryptonomic%2FConseilJS","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCryptonomic%2FConseilJS/lists"}