{"id":26181421,"url":"https://github.com/bitauth/bitauth-ide","last_synced_at":"2025-04-06T23:17:59.786Z","repository":{"id":38250839,"uuid":"170440619","full_name":"bitauth/bitauth-ide","owner":"bitauth","description":"an online IDE for bitcoin (cash) contracts","archived":false,"fork":false,"pushed_at":"2024-12-19T05:14:52.000Z","size":21097,"stargazers_count":91,"open_issues_count":19,"forks_count":18,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-03-30T21:13:50.308Z","etag":null,"topics":["bch","bitauth","bitcoin","bitcoin-cash","bitcoin-script","bsv","btc","cashassembly","cryptocurrency","ide","smart-contracts","wallet","xec"],"latest_commit_sha":null,"homepage":"https://ide.bitauth.com","language":"TypeScript","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/bitauth.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":"2019-02-13T04:32:24.000Z","updated_at":"2024-11-20T14:22:07.000Z","dependencies_parsed_at":"2024-12-12T21:32:05.394Z","dependency_job_id":null,"html_url":"https://github.com/bitauth/bitauth-ide","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bitauth%2Fbitauth-ide","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bitauth%2Fbitauth-ide/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bitauth%2Fbitauth-ide/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bitauth%2Fbitauth-ide/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bitauth","download_url":"https://codeload.github.com/bitauth/bitauth-ide/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247563943,"owners_count":20958971,"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":["bch","bitauth","bitcoin","bitcoin-cash","bitcoin-script","bsv","btc","cashassembly","cryptocurrency","ide","smart-contracts","wallet","xec"],"created_at":"2025-03-11T21:59:25.992Z","updated_at":"2025-04-06T23:17:59.765Z","avatar_url":"https://github.com/bitauth.png","language":"TypeScript","readme":"[![read the guide](https://img.shields.io/badge/read_the_guide-blue)](https://ide.bitauth.com/guide)\n[![CI](https://img.shields.io/github/actions/workflow/status/bitauth/bitauth-ide/ci.yml?branch=master)](https://github.com/bitauth/bitauth-ide/actions/workflows/ci.yml)\n[![Codecov](https://img.shields.io/codecov/c/github/bitauth/bitauth-ide/master.svg)](https://codecov.io/gh/bitauth/bitauth-ide)\n[![Join Chat on Telegram](https://img.shields.io/badge/chat-Bitauth%20IDE-0088CC?logo=telegram)](https://t.me/bitauth_ide)\n[![X (formerly Twitter) Follow](https://img.shields.io/twitter/follow/BitauthIDE)](https://x.com/BitauthIDE)\n[![GitHub stars](https://img.shields.io/github/stars/bitauth/bitauth-ide.svg?style=social\u0026logo=github\u0026label=Stars)](https://github.com/bitauth/bitauth-ide)\n\n# Bitauth IDE\n\n**[Bitauth IDE](https://ide.bitauth.com/)** is an online, integrated development environment for bitcoin (cash) contracts.\n\nTo get started, check out the [built-in guide](https://ide.bitauth.com/guide). An introductory video is also available [in this blog post](https://blog.bitjson.com/bitauth-ide-write-and-debug-custom-bitcoin-scripts-aad51f6e3f44), and you can also get help or share feedback in the [Bitauth IDE Telegram group](https://t.me/bitauth_ide).\n\n### Debug Unlocking and Locking Scripts Together\n\nUnlocking scripts can be edited alongside the locking scripts they unlock. The interactive evaluation viewer is constantly updated to display every step of the resulting evaluation as you type.\n\n![Debugging the combined evaluation of an unlocking script followed by a locking script](tests/screenshots.spec.ts-snapshots/script-editor-chromium-hd-linux.png)\n\n### Inspect the Evaluation in DevTools\n\nClick on any stack item to log the program state at that step to the JavaScript developer console. The [Libauth](https://libauth.org/) library is available at `window.libauth` to make debugging easier.\n\n![A screenshot of the JavaScript developer console after clicking on line 3 in the evaluation viewer](./public/console.png)\n\n### Create and Manage Entities and Variables\n\nCreate and modify the templates entities and the variables they contribute to wallets and evaluations.\n\n![The entity settings editor](tests/screenshots.spec.ts-snapshots/entity-settings-chromium-hd-linux.png)\n\n### Describe and Document Wallet Templates\n\nReview and modify the documentation included in the active template.\n\n![The template settings editor](tests/screenshots.spec.ts-snapshots/template-settings-chromium-hd-linux.png)\n\n### Import and Export JSON Wallet Templates\n\nProjects can be shared and re-imported in JSON format via files, sharable links, or plain text.\n\n![JSON import and export dialog](tests/screenshots.spec.ts-snapshots/template-import-export-chromium-hd-linux.png)\n\n## Contributing\n\nPull Requests are welcome!\n\nThis application requires [Yarn](https://yarnpkg.com/) for development. With `Node.js` installed, the `yarn` package manager can be installed by running `corepack enable`. Once `yarn` is installed:\n\n```sh\ngit clone https://github.com/bitauth/bitauth-ide.git\ncd bitauth-ide\nyarn\nyarn start\n```\n\nThis will open Bitauth IDE in development mode.\n\nBitauth IDE uses [Yarn's Zero-Installs strategy](https://yarnpkg.com/features/zero-installs) – all of [Bitauth IDE's dependencies are tracked in an independent git repository](https://github.com/bitauth/bitauth-ide-dependencies), and the dependency repo is automatically shallow-cloned into the `.yarn` directory.\n\nTo run all tests:\n\n```sh\nyarn test\n```\n\nTo run all end-to-end tests locally, collect screenshots, and analyze code coverage:\n\n```sh\nyarn cov\n```\n\nNote that the end-to-end (e2e) tests also visually compare screenshots across test run. Because screenshots will differ slightly between platforms, this repo only stores and records results for `linux`, the platform used by the [continuous integration (CI) environment](./.github/workflows/ci.yml). Screenshots for macOS (`darwin`) and Windows (`win32`) are not committed to the repo, so you will need to run the tests once (prior to making any changes) to locally generate the baseline screenshots for your platform.\n\nYou can also run the e2e tests on the same platform as the CI environment using Docker. First, make sure Docker is running locally (consider using [Docker Desktop](https://www.docker.com/products/docker-desktop/)), then:\n\n```sh\nyarn start\n# in another tab:\nyarn e2e:docker\n```\n\nTo run the e2e tests in Playwright's UI mode:\n\n```sh\nyarn e2e\n```\n\nTo open the e2e test report in a browser (e.g. to review visual differences between screenshots):\n\n```sh\nyarn e2e:report\n```\n\nTo build and run the production Progressive Web App (PWA):\n\n```sh\nyarn build\nyarn preview\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbitauth%2Fbitauth-ide","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbitauth%2Fbitauth-ide","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbitauth%2Fbitauth-ide/lists"}