{"id":19070884,"url":"https://github.com/ohager/signum-serial-letter","last_synced_at":"2026-06-29T10:31:29.231Z","repository":{"id":39609892,"uuid":"281194142","full_name":"ohager/signum-serial-letter","owner":"ohager","description":"A small tool to send Burstcoin messages in masses","archived":false,"fork":false,"pushed_at":"2024-01-10T09:43:40.000Z","size":526,"stargazers_count":1,"open_issues_count":2,"forks_count":1,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-09-22T04:09:32.309Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/ohager.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":"2020-07-20T18:21:10.000Z","updated_at":"2023-05-27T00:24:27.000Z","dependencies_parsed_at":"2024-11-09T01:34:01.408Z","dependency_job_id":null,"html_url":"https://github.com/ohager/signum-serial-letter","commit_stats":null,"previous_names":["ohager/signum-serial-letter","ohager/burst-serial-letter"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ohager/signum-serial-letter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ohager%2Fsignum-serial-letter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ohager%2Fsignum-serial-letter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ohager%2Fsignum-serial-letter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ohager%2Fsignum-serial-letter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ohager","download_url":"https://codeload.github.com/ohager/signum-serial-letter/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ohager%2Fsignum-serial-letter/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34923763,"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-29T02:00:05.398Z","response_time":58,"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":[],"created_at":"2024-11-09T01:21:10.089Z","updated_at":"2026-06-29T10:31:29.205Z","avatar_url":"https://github.com/ohager.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"![npm](https://img.shields.io/npm/v/signum-serial-letter)\n\n# signum-serial-letter\nA small tool to send messages and amount in masses on [Signum Blockchain](https://signum.network)\n\n## Installation\n\n\u003e You need Nodejs (Version \u003e=16) installed\n\n`npm i signum-serial-letter -g`\n\nNow it should be available as CLI command, type:\n\n`signum-serial-letter --version` \n\n## Usage \n\nThe tools come with its built-in help. \n\nJust type `signum-serial-letter -h`\n\n--------------\n### Quick Start\n\nCreate a JSON file according to the [JSON File Format](#json-file-format)\n\nRun `signum-serial-letter -d ./my-data.json`\n\n\n#### Test Run \nKeep in mind, that sending messages costs you SIGNA.\nSo, better to test your serial letter on testnet before.\nYou can/should even run a dry run, without actually sending the messages using the `--test`/`-t` flag:\n\n`signum-serial-letter -d ./my-data.json -t` or `signum-serial-letter --data ./my-data.json --test` \n\n\n------------\n\n\n### JSON File Format\n\nBefore you can send data you need to prepare a JSON file to configure the Signum Node, the message and the recipient list.\n\nCreate a JSON file, e.g. `my-message-info.json` with the following fields:\n\n```json\n{\n  \"host\": \"http://localhost:8125\", // node to use, ideally local node!\n  \"txPerBlock\": 100, // how many transactions per block\n  \"recipients\": [\n    {\n      \"to\":  \"c213e4144ba84af94aae2458308fae1f0cb083870c8f3012eea58147f3b09d4a\", // pub key\n      \"msg\": \"Your text here\",\n      \"signa\": 20.12\n    },\n    {\n      \"to\":  \"16107620026796983538\", // account id\n      \"signa\": 10.12 // send signa only\n    },\n    {\n      \"to\":  \"S-QAJA-QW5Y-SWVP-4RVP4\", // account address\n      \"msg\": \"just a message -no money\"\n    }\n    // add more\n  ]\n}\n```\n\n\u003e [Here is an example file](./data.example.json)\n\n\nInstead of adding the recipients as JSON objects, it's possible to reference a CSV file with a list of recipients, messages and amounts.\nThe JSON of the `./my-message-info.json` would look like this \n\n```json\n{\n  \"host\": \"http://localhost:8125\",\n  \"txPerBlock\": 100,\n  \"recipients\": \"./recipients.example.csv\" // loads from a CSV file\n}\n```\n\u003e The path of the CSV file can be absolute or relative the the current working directory\n\n### CSV Recipient File Format\n\nThe CSV file is of the following format\n\n`\u003caccount\u003e,\u003cmessage\u003e,\u003csigna\u003e`  - where `\u003cmessage\u003e` or `\u003csigna\u003e` are optional, but at least one of the field must exist\n\nExample:\n\n```csv\nS-QAJA-QW5Y-SWVP-4RVP4,\"some text\",2.0\n16107620026796983538,\"another text\",1.0\n4382407931849532142,,1.0\n7210b8941929030324540238450e985899989a7ad0267e0c76f668fde3b1016b,\"only a message\",\n```\n\n\u003e Delimiter can be `,` or `;` - Double-Quotes `\"` are optional - header is not allowed.\n\n\u003e Here is an [example JSON file](./data-csv.example.json) and [example CSV file](./recipients.example.csv)\n\n### Chunked Sending\n\nIn case you want to send hundreds/thousands of messages you may up ending filling entire blocks just by your transactions. \nIn that case it's possible to send messages in chunks/batches per block. The parameter `txPerBlock` determines \nhow many transactions shall be executed per block. As an example, you can set `txPerBlock` to 100 and send to 1000 accounts. \nAll transactions will be pushed to the nodes _mempool_, but by using the `referencedTransactionFullHash` feature from Signum the\neffective submission will be split into chunks and subsequently sent over the next 10 blocks. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fohager%2Fsignum-serial-letter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fohager%2Fsignum-serial-letter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fohager%2Fsignum-serial-letter/lists"}