{"id":13746687,"url":"https://github.com/skycoin/skycoin","last_synced_at":"2026-04-01T22:12:54.930Z","repository":{"id":12754591,"uuid":"15427835","full_name":"skycoin/skycoin","owner":"skycoin","description":"Skycoin Core and Wallet","archived":false,"fork":false,"pushed_at":"2026-03-28T00:41:23.000Z","size":132285,"stargazers_count":588,"open_issues_count":79,"forks_count":271,"subscribers_count":99,"default_branch":"develop","last_synced_at":"2026-03-28T03:44:54.424Z","etag":null,"topics":["blockchain","blockchain-platform","cryptocurrency","daemon","golang","redecentralize","skycoin","smart-contracts","wallet"],"latest_commit_sha":null,"homepage":"https://www.skycoin.com","language":"Go","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/skycoin.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2013-12-25T01:50:16.000Z","updated_at":"2026-03-28T00:41:28.000Z","dependencies_parsed_at":"2025-09-14T18:19:43.791Z","dependency_job_id":"364fbc5b-dbf8-4fc5-abb4-320d0b2df7b3","html_url":"https://github.com/skycoin/skycoin","commit_stats":{"total_commits":7218,"total_committers":88,"mean_commits":82.02272727272727,"dds":0.8115821557218066,"last_synced_commit":"9ca7016bd686fe6b0557cae06a9c2929be4fac19"},"previous_names":[],"tags_count":31,"template":false,"template_full_name":null,"purl":"pkg:github/skycoin/skycoin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skycoin%2Fskycoin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skycoin%2Fskycoin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skycoin%2Fskycoin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skycoin%2Fskycoin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/skycoin","download_url":"https://codeload.github.com/skycoin/skycoin/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skycoin%2Fskycoin/sbom","scorecard":{"id":830520,"data":{"date":"2025-08-11","repo":{"name":"github.com/skycoin/skycoin","commit":"e6407653953265e90e5e563b2caa2d7c346debf5"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.9,"checks":[{"name":"Code-Review","score":1,"reason":"Found 2/12 approved changesets -- score normalized to 1","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":4,"reason":"5 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 4","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/tests.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Info: Possibly incomplete results: error parsing shell code: not a valid test operator: -d: docker_launcher.sh:0","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/tests.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/skycoin/skycoin/tests.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/tests.yml:23: update your workflow using https://app.stepsecurity.io/secureworkflow/skycoin/skycoin/tests.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/tests.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/skycoin/skycoin/tests.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/tests.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/skycoin/skycoin/tests.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/tests.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/skycoin/skycoin/tests.yml/develop?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/tests.yml:55: update your workflow using https://app.stepsecurity.io/secureworkflow/skycoin/skycoin/tests.yml/develop?enable=pin","Warn: containerImage not pinned by hash: docker/images/mainnet/Dockerfile:4","Warn: containerImage not pinned by hash: docker/images/mainnet/Dockerfile:52","Warn: downloadThenRun not pinned by hash: ci-scripts/install-golangci-lint.sh:11","Warn: chocoCommand not pinned by hash: ci-scripts/install-nodejs-win.sh:6","Warn: npmCommand not pinned by hash: electron/app/install-dependencies.sh:5","Warn: npmCommand not pinned by hash: electron/install-node-modules.sh:11","Warn: goCommand not pinned by hash: .github/workflows/tests.yml:53","Info:   0 out of   6 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   2 containerImage dependencies pinned","Info:   1 out of   2 goCommand dependencies pinned","Info:   0 out of   1 downloadThenRun dependencies pinned","Info:   0 out of   1 chocoCommand dependencies pinned","Info:   0 out of   2 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Vulnerabilities","score":0,"reason":"96 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-cph5-m8f7-6c5x","Warn: Project is vulnerable to: GHSA-wf5p-g6vw-rhxx","Warn: Project is vulnerable to: GHSA-jr5f-v2jv-69x6","Warn: Project is vulnerable to: GHSA-74fj-2j2h-c42q","Warn: Project is vulnerable to: GHSA-pw2r-vq6v-hr8c","Warn: Project is vulnerable to: GHSA-jchw-25xp-jwwc","Warn: Project is vulnerable to: GHSA-cxjh-pqwp-8mfp","Warn: Project is vulnerable to: GHSA-93q8-gq69-wqmw","Warn: Project is vulnerable to: GHSA-r4pf-3v7r-hh55","Warn: Project is vulnerable to: GHSA-v6h2-p8h4-qcjw","Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275","Warn: Project is vulnerable to: GHSA-phwq-j96m-2c2q","Warn: Project is vulnerable to: GHSA-ghr5-ch3p-vcr6","Warn: Project is vulnerable to: GHSA-3p22-ghq8-v749","Warn: Project is vulnerable to: GHSA-77xc-hjv8-ww97","Warn: Project is vulnerable to: GHSA-mq8j-3h7h-p8g7","Warn: Project is vulnerable to: GHSA-p2jh-44qj-pf2v","Warn: Project is vulnerable to: GHSA-p7v2-p9m8-qqg7","Warn: Project is vulnerable to: GHSA-7x97-j373-85x5","Warn: Project is vulnerable to: GHSA-7m48-wc93-9g85","Warn: Project is vulnerable to: GHSA-qqvq-6xgj-jw8g","Warn: Project is vulnerable to: GHSA-6r2x-8pq8-9489","Warn: Project is vulnerable to: GHSA-pfrx-2q88-qq97","Warn: Project is vulnerable to: GHSA-rc47-6667-2j5j","Warn: Project is vulnerable to: GHSA-9c47-m6qq-7p4h","Warn: Project is vulnerable to: GHSA-f8q6-p94x-37v3","Warn: Project is vulnerable to: GHSA-xvch-5gv4-984h","Warn: Project is vulnerable to: GHSA-4cpg-3vgw-4877","Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw","Warn: Project is vulnerable to: GHSA-52f5-9888-hmc6","Warn: Project is vulnerable to: GHSA-c75v-2vq8-878f","Warn: Project is vulnerable to: GHSA-968p-4wvh-cqc8","Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92","Warn: Project is vulnerable to: GHSA-whgm-jr23-g3j9","Warn: Project is vulnerable to: GHSA-fwr7-v2mv-hh25","Warn: Project is vulnerable to: GHSA-xq7p-g2vc-g82p","Warn: Project is vulnerable to: GHSA-qwcr-r2fm-qrc7","Warn: Project is vulnerable to: GHSA-vc8w-jr9v-vj7f","Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg","Warn: Project is vulnerable to: GHSA-pxg6-pf52-xh8x","Warn: Project is vulnerable to: GHSA-w573-4hg7-7wgq","Warn: Project is vulnerable to: GHSA-273r-mgr4-v34f","Warn: Project is vulnerable to: GHSA-r7qp-cfhv-p84w","Warn: Project is vulnerable to: GHSA-6h5x-7c5m-7cr7","Warn: Project is vulnerable to: GHSA-rv95-896h-c2vc","Warn: Project is vulnerable to: GHSA-qw6h-vgh9-j6wx","Warn: Project is vulnerable to: GHSA-fjxv-7rqg-78g4","Warn: Project is vulnerable to: GHSA-c7qv-q95q-8v27","Warn: Project is vulnerable to: GHSA-78xj-cgh5-2h22","Warn: Project is vulnerable to: GHSA-2p57-rm9w-gvfp","Warn: Project is vulnerable to: GHSA-896r-f27r-55mw","Warn: Project is vulnerable to: GHSA-36fh-84j7-cv5h","Warn: Project is vulnerable to: GHSA-7x7c-qm48-pq9c","Warn: Project is vulnerable to: GHSA-rc3x-jf5g-xvc5","Warn: Project is vulnerable to: GHSA-76p3-8jx3-jpfq","Warn: Project is vulnerable to: GHSA-3rfm-jhwj-7488","Warn: Project is vulnerable to: GHSA-hhq3-ff78-jv3g","Warn: Project is vulnerable to: GHSA-82v2-mx6x-wq7q","Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv","Warn: Project is vulnerable to: GHSA-8hfj-j24r-96c4","Warn: Project is vulnerable to: GHSA-wc69-rhjr-hc9g","Warn: Project is vulnerable to: GHSA-qrpm-p2h7-hrv2","Warn: Project is vulnerable to: GHSA-mwcw-c2x4-8c55","Warn: Project is vulnerable to: GHSA-5rrq-pxf6-6jx5","Warn: Project is vulnerable to: GHSA-8fr3-hfg3-gpgp","Warn: Project is vulnerable to: GHSA-gf8q-jrpm-jvxq","Warn: Project is vulnerable to: GHSA-2r2c-g63r-vccr","Warn: Project is vulnerable to: GHSA-cfm4-qjh2-4765","Warn: Project is vulnerable to: GHSA-x4jg-mjrx-434g","Warn: Project is vulnerable to: GHSA-rp65-9cf3-cjxr","Warn: Project is vulnerable to: GHSA-76c9-3jph-rj3q","Warn: Project is vulnerable to: GHSA-9wv6-86v2-598j","Warn: Project is vulnerable to: GHSA-rhx6-c78j-4q9w","Warn: Project is vulnerable to: GHSA-7fh5-64p2-3v2j","Warn: Project is vulnerable to: GHSA-hrpp-h998-j3pp","Warn: Project is vulnerable to: GHSA-p8p7-x288-28g6","Warn: Project is vulnerable to: GHSA-m6fv-jmcg-4jfg","Warn: Project is vulnerable to: GHSA-cm22-4g7w-348p","Warn: Project is vulnerable to: GHSA-25hc-qcg6-38wj","Warn: Project is vulnerable to: GHSA-qm95-pgcg-qqfq","Warn: Project is vulnerable to: GHSA-cqmj-92xf-r6r9","Warn: Project is vulnerable to: GHSA-f5x3-32g6-xq36","Warn: Project is vulnerable to: GHSA-4wf5-vphf-c2xc","Warn: Project is vulnerable to: GHSA-72xf-g2v4-qvf3","Warn: Project is vulnerable to: GHSA-fhg7-m89q-25r3","Warn: Project is vulnerable to: GHSA-rqff-837h-mm52","Warn: Project is vulnerable to: GHSA-8v38-pw62-9cw2","Warn: Project is vulnerable to: GHSA-hgjh-723h-mx2j","Warn: Project is vulnerable to: GHSA-jf5r-8hm2-f872","Warn: Project is vulnerable to: GHSA-hc6q-2mpp-qw7j","Warn: Project is vulnerable to: GHSA-4vvj-4cpr-p986","Warn: Project is vulnerable to: GHSA-wr3j-pwj9-hqq6","Warn: Project is vulnerable to: GHSA-4v9v-hfq4-rm2v","Warn: Project is vulnerable to: GHSA-9jgg-88mc-972h","Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q","Warn: Project is vulnerable to: GHSA-776f-qx25-q3cc"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}}]},"last_synced_at":"2025-08-23T17:39:56.226Z","repository_id":12754591,"created_at":"2025-08-23T17:39:56.226Z","updated_at":"2025-08-23T17:39:56.226Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31292637,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T21:15:39.731Z","status":"ssl_error","status_checked_at":"2026-04-01T21:15:34.046Z","response_time":53,"last_error":"SSL_read: 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":["blockchain","blockchain-platform","cryptocurrency","daemon","golang","redecentralize","skycoin","smart-contracts","wallet"],"created_at":"2024-08-03T06:00:58.735Z","updated_at":"2026-04-01T22:12:54.921Z","avatar_url":"https://github.com/skycoin.png","language":"Go","funding_links":[],"categories":["Go","Web 3.0"],"sub_categories":[],"readme":"![skycoin logo](https://user-images.githubusercontent.com/26845312/32426705-d95cb988-c281-11e7-9463-a3fce8076a72.png)\n\n# Skycoin\n\n[![Go](https://github.com/skycoin/skycoin/workflows/Go/badge.svg)](https://github.com/skycoin/skycoin/actions)\n[![GoDoc](https://godoc.org/github.com/skycoin/skycoin?status.svg)](https://godoc.org/github.com/skycoin/skycoin)\n[![Go Report Card](https://goreportcard.com/badge/github.com/skycoin/skycoin)](https://goreportcard.com/report/github.com/skycoin/skycoin)\n\nSkycoin is a next-generation cryptocurrency.\n\nSkycoin was written from scratch and designed over four years to realize the\nideal of Bitcoin and represents the apex of cryptocurrency design.\nSkycoin is not designed to add features to Bitcoin,\nbut rather improves Bitcoin by increasing simplicity,\nsecurity and stripping out everything non-essential.\n\nSome people have hyped the Skycoin Project as leading into \"Bitcoin 3.0\".\nThe coin itself is not \"Bitcoin 3.0\",\nbut is rather \"Bitcoin 1.0\". Bitcoin is a prototype crypto-coin.\nSkycoin was designed to be what Bitcoin would look like if it were built from\nscratch, to remedy the rough edges in the Bitcoin design.\n\n- no duplicate coin-base outputs\n- enforced checks for hash collisions\n- simple deterministic wallets\n- no transaction malleability\n- no signature malleability\n- removal of the scripting language\n- CoinJoin and normal transactions are indistinguishable\n- elimination of edge-cases that prevent independent node implementations\n- \u003c=10 second transaction times\n- elimination of the need for mining to achieve blockchain consensus\n\n## Skycoin Distribution\n\nSkycoin is not mined. The maximum supply is 100,000,000 SKY.\n\nDistribution occurs through the [Skywire Network](https://github.com/skycoin/skywire) reward system. Approximately 816,000 Skycoin are distributed annually to eligible Skywire visors that meet uptime and network participation requirements.\n\nFor detailed reward eligibility requirements and current distribution rules, see:\n* [Skywire Mainnet Reward Rules](https://github.com/skycoin/skywire/blob/develop/rewards/mainnet_rules.md)\n* [Skywire Reward Dashboard](https://fiber.skywire.dev)\n\nSkywire visors do not process Skycoin transactions or sync the Skycoin blockchain. The reward system serves solely as the distribution mechanism for Skycoin.\n\n## Decentralization Through Fibercoins\n\nSkycoin's approach to decentralization differs from proof-of-work or proof-of-stake consensus models. Rather than forcing all activity onto a single blockchain, Skycoin enables users to create custom fiber coins — independent blockchains with their own parameters, distribution models, and governance. The [newcoin tool](./cmd/newcoin/README.md) makes this process straightforward.\n\nThis multi-chain architecture allows:\n* Independent blockchains without competition for resources\n* Custom tokenomics and distribution models per fibercoin\n* Simpler, more predictable system requirements compared to shared-chain token models\n\n## Links\n\n* [skycoin.com](https://www.skycoin.com)\n* [Skycoin Blog](https://www.skycoin.com/blog)\n* [Skycoin Docs](https://www.skycoin.com/docs)\n* [Skycoin Blockchain Explorer](https://explorer.skycoin.com)\n* [Skycoin Telegram Chat](https://t.me/skycoin)\n* [Skycoin Telegram Support](https://t.me/skywire)\n* [Skycoin Github Wiki](https://github.com/skycoin/skycoin/wiki)\n\n## Table of Contents\n\n\u003c!-- MarkdownTOC levels=\"1,2,3,4,5\" autolink=\"true\" bracket=\"round\" --\u003e\n\n- [Changelog](#changelog)\n- [Skycoin Distribution](#skycoin-distribution)\n- [Decentralization Through Fibercoins](#decentralization-through-fibercoins)\n- [Links](#links)\n- [Installation](#installation)\n\t- [Go 1.23+ Installation and Setup](#go-123-installation-and-setup)\n\t- [Go get skycoin](#go-get-skycoin)\n\t- [Run Skycoin from the command line](#run-skycoin-from-the-command-line)\n\t- [Show Skycoin node options](#show-skycoin-node-options)\n\t- [Run Skycoin with options](#run-skycoin-with-options)\n\t- [Docker image](#docker-image)\n\t- [Building your own images](#building-your-own-images)\n\t- [Development image](#development-image)\n- [API Documentation](#api-documentation)\n\t- [REST API](#rest-api)\n\t- [Skycoin command line interface](#skycoin-command-line-interface)\n- [Integrating Skycoin with your application](#integrating-skycoin-with-your-application)\n- [Contributing a node to the network](#contributing-a-node-to-the-network)\n- [Creating a new coin](#creating-a-new-coin)\n- [Daemon CLI Options](#daemon-cli-options)\n- [URI Specification](#uri-specification)\n- [Wire protocol user agent](#wire-protocol-user-agent)\n- [Offline transaction signing](#offline-transaction-signing)\n- [Deploy a public Skycoin API node with HTTPS](#deploy-a-public-skycoin-api-node-with-https)\n- [Development](#development)\n\t- [Modules](#modules)\n\t- [Client libraries](#client-libraries)\n\t- [Running Tests](#running-tests)\n\t- [Running Integration Tests](#running-integration-tests)\n\t\t- [Stable Integration Tests](#stable-integration-tests)\n\t\t- [Live Integration Tests](#live-integration-tests)\n\t\t- [Debugging Integration Tests](#debugging-integration-tests)\n\t\t- [Update golden files in integration testdata](#update-golden-files-in-integration-testdata)\n\t- [Test coverage](#test-coverage)\n\t\t- [Test coverage for the live node](#test-coverage-for-the-live-node)\n\t- [Formatting](#formatting)\n\t- [Code Linting](#code-linting)\n\t- [Profiling](#profiling)\n\t- [Fuzzing](#fuzzing)\n\t\t- [base58](#base58)\n\t\t- [encoder](#encoder)\n\t- [Dependencies](#dependencies)\n\t\t- [Rules](#rules)\n\t\t- [Management](#management)\n\t- [Configuration Modes](#configuration-modes)\n\t\t- [Development Desktop Client Mode](#development-desktop-client-mode)\n\t\t- [Server Daemon Mode](#server-daemon-mode)\n\t\t- [Electron Desktop Client Mode](#electron-desktop-client-mode)\n\t\t- [Standalone Desktop Client Mode](#standalone-desktop-client-mode)\n\t- [Wallet GUI Development](#wallet-gui-development)\n\t\t- [Translations](#translations)\n\t- [Releases](#releases)\n\t\t- [Update the version](#update-the-version)\n\t\t- [Check the translations](#check-the-translations)\n\t\t- [Pre-release testing](#pre-release-testing)\n\t\t- [Creating release builds](#creating-release-builds)\n\t\t- [Release signing](#release-signing)\n- [Responsible Disclosure](#responsible-disclosure)\n\n\u003c!-- /MarkdownTOC --\u003e\n\n## Changelog\n\n[CHANGELOG.md](CHANGELOG.md)\n\n## Installation\n\nSkycoin supports go1.23+.\n\nThe `skycoin` binary includes multiple utilities as subcommands:\n\n* **cli** - Command line interface for wallet operations, blockchain queries, and transaction management\n* **daemon** - Full node daemon with wallet functionality and web interface\n* **explorer** - Blockchain explorer with web interface\n* **newcoin** - Tool for creating custom fiber coins ([see documentation](./cmd/newcoin/README.md))\n* **web** - Thin client web wallet\n\n**Note on flag format:** Skycoin now uses GNU/POSIX standard flags (`-f` or `--flag`) instead of Go-style flags (`-flag`).\n\n### Recommended Installation Methods\n\nChoose one of the following methods (in order of recommendation):\n\n#### 1. Run directly with Go (recommended for testing)\n\n```sh\n$ go run github.com/skycoin/skycoin@develop\n```\n\nOr with a specific command:\n\n```sh\n$ go run github.com/skycoin/skycoin@develop daemon --help\n$ go run github.com/skycoin/skycoin@develop cli addressGen\n```\n\n#### 2. Install to GOPATH/bin\n\n```sh\n$ go install github.com/skycoin/skycoin@develop\n$ skycoin --version\n$ skycoin daemon --help\n```\n\n#### 3. Download release binaries\n\nDownload the latest release for your platform from:\nhttps://github.com/skycoin/skycoin/releases\n\nExtract and run:\n```sh\n$ ./skycoin --version\n```\n\n#### 4. Compile from source\n\n```sh\n$ git clone https://github.com/skycoin/skycoin\n$ cd skycoin\n$ go build -o skycoin .\n$ ./skycoin --version\n```\n\n\n### Running Skycoin\n\nOnce installed, the `skycoin` binary provides access to all utilities:\n\n```sh\n# Run the daemon (default command)\n$ skycoin daemon\n\n# Show daemon options\n$ skycoin daemon --help\n\n# Run with custom options (note: GNU/POSIX flags)\n$ skycoin daemon --launch-browser=false --data-dir=/custom/path\n\n# Use CLI tools\n$ skycoin cli addressGen\n$ skycoin cli addressBalance \u003caddress\u003e\n\n# Start blockchain explorer\n$ skycoin explorer\n\n# Create a new fibercoin\n$ skycoin newcoin config \u003e mycoin.toml\n```\n\n### Command Usage Examples\n\n```sh\n    ┌─┐┬┌─┬ ┬┌─┐┌─┐┬┌┐┌\n    └─┐├┴┐└┬┘│  │ │││││\n    └─┘┴ ┴ ┴ └─┘└─┘┴┘└┘\n\n Available Commands:    \n  cli       skycoin command line interface    \n  daemon    skycoin wallet  \n  explorer  skycoin blockchain explorer  \n  newcoin   newcoin is a helper tool for creating new fiber coins  \n  web       skycoin thin client web wallet\n\nFlags:\n  -b, --bv        print runtime/debug.BuildInfo.Main.Version\n  -d, --info      print runtime/debug.BuildInfo\n  -v, --version   version for skycoin\n```\n\n### Docker\n\n[DOCKER.md](DOCKER.md).\n\n## API Documentation\n\n### REST API\n\n[REST API](src/api/README.md).\n\n### Skycoin command line interface\n\nThe CLI is accessed via `skycoin cli` subcommand. See [CLI command API](cmd/skycoin-cli/README.md) for detailed documentation.\n\nExample:\n```sh\n$ skycoin cli addressGen\n$ skycoin cli addressBalance \u003caddress\u003e\n$ skycoin cli walletCreate -l \"My Wallet\"\n```\n\n## Integrating Skycoin with your application\n\n[Skycoin Integration Documentation](INTEGRATION.md)\n\n## Contributing a node to the network\n\nAdd your node's `ip:port` to the [peers.txt](peers.txt) file.\nThis file will be periodically uploaded to https://downloads.skycoin.com/blockchain/peers.txt\nand used to seed client with peers.\n\n*Note*: Do not add Skywire nodes to `peers.txt`.\nOnly add Skycoin nodes with high uptime and a static IP address (such as a Skycoin node hosted on a VPS).\n\n## Creating a new coin\n\nSee the [Fibercoin Creation Documentation](./cmd/newcoin/README.md)\n\n## Daemon CLI Options\n\nSee the [Skycoin Daemon CLI options](./cmd/skycoin/README.md)\n\n## URI Specification\n\nSkycoin URIs obey the same rules as specified in Bitcoin's [BIP21](https://github.com/bitcoin/bips/blob/master/bip-0021.mediawiki).\nThey use the same fields, except with the addition of an optional `hours` parameter, specifying the coin hours.\n\nExample Skycoin URIs:\n\n* `skycoin:2hYbwYudg34AjkJJCRVRcMeqSWHUixjkfwY`\n* `skycoin:2hYbwYudg34AjkJJCRVRcMeqSWHUixjkfwY?amount=123.456\u0026hours=70`\n* `skycoin:2hYbwYudg34AjkJJCRVRcMeqSWHUixjkfwY?amount=123.456\u0026hours=70\u0026label=friend\u0026message=Birthday%20Gift`\n\nAdditonally, if no `skycoin:` prefix is present when parsing, the string may be treated as an address:\n\n* `2hYbwYudg34AjkJJCRVRcMeqSWHUixjkfwY`\n\nHowever, do not use this URI in QR codes displayed to the user, because the address can't be disambiguated from other Skyfiber coins.\n\n## Wire protocol user agent\n\n[Wire protocol user agent description](https://github.com/skycoin/skycoin/wiki/Wire-protocol-user-agent)\n\n## Hardware Wallet\n\nHardware wallet commands are **not included** in the default `skycoin` binary. To use hardware wallets, compile separately:\n\n```sh\n$ cd cmd/hardware-wallet\n$ go build -o skycoin-hw .\n$ ./skycoin-hw --help\n```\n\nHardware wallet functionality is provided by:\n* [hardware-wallet-daemon](https://github.com/skycoin/hardware-wallet-daemon) - HTTP API daemon for hardware wallets  \n* [hardware-wallet-go](https://github.com/skycoin/hardware-wallet-go) - CLI interface for hardware wallets\n\n**Note:** Hardware wallet support is currently limited to linux/amd64 platforms.\n\n## Offline transaction signing\n\nBefore doing the offline transaction signing, we need to have the unsigned transaction created. Using the `skycoin cli` command to create an unsigned transaction in hot wallet, and copy the hex encoded transaction to the computer where the cold wallet is installed. Then use the `skycoin cli` command to sign it offline.\n\n### Create an unsigned transaction\n\nThe `skycoin cli` tool replys on the APIs of the node or `skycoin daemon`, hence we have to start the node before running the tool.\n\n Go to the project root and run:\n\n```bash\n$ skycoin daemon --launch-browser=false\n```\n\nOnce the node is started, we could use the following command to create an unsigned transaction.\n\n```bash\n$ skycoin cli createRawTransactionV2 $WALLET_NAME $RECIPIENT_ADDRESS $AMOUNT --unsign\n```\n\n\u003e Note: Don't forget the `--unsign` flag, otherwise it would try to sign the transaction.\n\n\u003cdetails\u003e\n \u003csummary\u003eView Output\u003c/summary\u003e\n\n```\nb700000000e6b869f570e2bfebff1b4d7e7c9e86885dbc34d6de988da6ff998e7acd7e6e14010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000007531184ad0afeebbff2049b855e0921329cb1cb74d769ac57c057c9c8bd2b6810100000000ed5ea2ca4fe9b4560409b50c5bf7cb39b6c5ff6e50690f00000000000000000000000000\n```\n\n\u003c/details\u003e\n\nCopy and save the generated transaction string. We will sign it with a cold wallet offline in the next section.\n\n### Sign the transaction\n\nThe `skycoin node` needs to have the most recently `DB` so that the user would not lose much coin hours when signing the transaction. We could copy the full synchronized `data.db` from the hot wallet to the computer where the cold wallet is installed. And place it in `$HOME/.skycoin/data.db`. Then start the node with the network disabled.\n\n```bash\n$ skycoin daemon --launch-browser=false --disable-networking\n```\n\nRun the following command to sign the transaction:\n\n```bash\n$ skycoin cli signTransaction $RAW_TRANSACTION\n```\n\nThe `$RAW_TRANSACTION` is the transaction string that we generated in the hot wallet.\n\nIf the cold wallet is encrypted, you will be prompted to enter the password to sign the transaction.\n\n\u003cdetails\u003e\n \u003csummary\u003eView Output\u003c/summary\u003e\n\n```\nb700000000e6b869f570e2bfebff1b4d7e7c9e86885dbc34d6de988da6ff998e7acd7e6e14010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000007531184ad0afeebbff2049b855e0921329cb1cb74d769ac57c057c9c8bd2b6810100000000ed5ea2ca4fe9b4560409b50c5bf7cb39b6c5ff6e50690f00000000000000000000000000\n```\n\n\u003c/details\u003e\n\nOnce the transaction is signed, we could copy and save the signed transaction string and broadcast it in the hot wallet.\n\n```bash\n$ skycoin cli broadcastTransaction $SIGNED_RAW_TRANSACTION\n```\n\nA transaction id would be returned and you can check it in the [explorer](https://explorer.skycoin.com).\n\n## Deploy a public Skycoin API node with HTTPS\n\nWe recommend using [caddy server](https://caddyserver.com/) to deploy a public Skycoin API node on a\nLinux server. The public API node should have the `HTTPS` support, which could be handled automatically\nby the `caddy server`. But we need to have a domain and create a DNS record to bind the server ip address\nto it.\n\nSuppose we're going to deploy a Skycoin API node on `apitest.skycoin.com`, and we have already bound\nthe server's IP to it. Follow the steps below to complete the deployment.\n\n### Install and run a skycoin api node\n\n```bash\n# Create a skycoin folder\n$ mkdir $HOME/skycoin \u0026\u0026 cd $HOME/skycoin\n\n# Download the latest skycoin binary from https://github.com/skycoin/skycoin/releases\n$ wget https://downloads.skycoin.com/wallet/skycoin-VERSION-gui-standalone-linux-x64.tar.gz\n$ tar -zxvf skycoin-VERSION-gui-standalone-linux-x64.tar.gz\n$ cd skycoin-VERSION-gui-standalone-linux-x64\n\n# Run with API enabled\n$ ./skycoin -web-interface-port=6420 -host-whitelist=$DOMAIN_NAME -enable-api-sets=\"READ,TXN\"\n```\n\n\u003e Note: The `-host-whitelist` flag is required, otherwise the node will return `403 Forbidden` errors.\n\n### Install the caddy server\n\n```bash\n# Create a caddy folder\n$ mkdir $HOME/caddy \u0026\u0026 cd $HOME/caddy\n\n# Download the latest caddy from https://github.com/caddyserver/caddy/releases\n$ wget https://github.com/caddyserver/caddy/releases/download/vVERSION/caddy_vVERSION_linux_amd64.tar.gz\n$ tar -zxvf caddy_vVERSION_linux_amd64.tar.gz\n```\n\nThe `caddy` tool would be exist in the folder, let's create a `Caddyfile` to define the reverse proxy\nrules now.\n\n```bash\ncat \u003c\u003cEOF \u003eCaddyfile\napitest.skycoin.com {\n   proxy / localhost:6420 {\n      transparent\n   }\n}\nEOF\n```\n\nThen run the caddy server\n\n```bash\n$ ./caddy\n```\n\nYou will be prompted to enter an email address to receive the notifications from let's Encrypt.\nThat's all about the deployment, check the https://apitest.skycoin.com/api/v1/version to see if\nthe Skycoin API node is working correctly.\n\n## Responsible Disclosure\n\nSecurity flaws in skycoin source or infrastructure can be sent to security@skycoin.com.\nBounties are available for accepted critical bug reports.\n\nPGP Key for signing:\n\n```\n-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmDMEXYCYPxYJKwYBBAHaRw8BAQdAeDPi3n9xLv5xGsxbcbwZjfV4h772W+GPZ3Mz\nRS17STm0L2lrZXRoZWFkb3JlIHNreWNvaW4gPGx1eGFpcmxha2VAcHJvdG9ubWFp\nbC5jb20+iJYEExYIAD4WIQSY+TTwT5M0uB36M5iRO71SBrGWIAUCXYCYPwIbAwUJ\nB4TOAAULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAKCRCRO71SBrGWID0NAP0VRiNA\n2Kq2uakPMqV29HY39DVhc9QgxJfMIwXWtFxKAwEAn0NqGRV/iKXNf+qxqAtMWa5X\nF2S36hkEfDHO5W44DwC4OARdgJg/EgorBgEEAZdVAQUBAQdAeiEz/tUmCgOA67Rq\nANmHmX2vrdZp/SfJ9KOI2ANCCm8DAQgHiH4EGBYIACYWIQSY+TTwT5M0uB36M5iR\nO71SBrGWIAUCXYCYPwIbDAUJB4TOAAAKCRCRO71SBrGWIJOJAQDTaqxpcLtAw5kH\nHp2jWvUnLudIONeqeUTCmkLJhcNv1wD+PFJZWMKD1btIG4pkXRW9YoA7M7t5by5O\nx5I+LywZNww=\n=p6Gq\n-----END PGP PUBLIC KEY BLOCK-----\n```\n\n\nKey ID: [0x913BBD5206B19620](https://pgp.mit.edu/pks/lookup?search=0x913BBD5206B19620\u0026op=index)\n\nThe fingerprint for this key is:\n\n```\npub   ed25519 2019-09-17 [SC] [expires: 2023-09-16]\n      98F934F04F9334B81DFA3398913BBD5206B19620\nuid           [ultimate] iketheadore skycoin \u003cluxairlake@protonmail.com\u003e\nsub   cv25519 2019-09-17 [E] [expires: 2023-09-16]\n```\n\nKeybase.io account: https://keybase.io/iketheadore\n\n\n\n## Dependency Graph\n\nmade with [goda](https://github.com/loov/goda)\n\n```\ngo run github.com/loov/goda@latest graph github.com/skycoin/skycoin/... | dot -Tsvg -o docs/skycoin-goda-graph.svg\n```\n\n![Dependency Graph](docs/skycoin-goda-graph.svg \"github.com/skycoin/skycoin Dependency Graph\")\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskycoin%2Fskycoin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fskycoin%2Fskycoin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskycoin%2Fskycoin/lists"}