{"id":40542438,"url":"https://github.com/sebbo2002/vestaboard","last_synced_at":"2026-06-30T10:00:34.128Z","repository":{"id":57750245,"uuid":"525455320","full_name":"sebbo2002/vestaboard","owner":"sebbo2002","description":"Just another client for the Vestaboard APIs.","archived":false,"fork":false,"pushed_at":"2026-06-23T08:15:15.000Z","size":5957,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"develop","last_synced_at":"2026-06-23T10:11:45.475Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/sebbo2002.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-08-16T16:15:40.000Z","updated_at":"2026-06-23T08:12:30.000Z","dependencies_parsed_at":"2022-08-26T08:31:36.218Z","dependency_job_id":"5fc32fce-b5e3-4f2d-a379-e8315ca3f292","html_url":"https://github.com/sebbo2002/vestaboard","commit_stats":{"total_commits":192,"total_committers":3,"mean_commits":64.0,"dds":0.4375,"last_synced_commit":"7015149db32411442a29aa25c4b266e083d0dc42"},"previous_names":[],"tags_count":114,"template":false,"template_full_name":null,"purl":"pkg:github/sebbo2002/vestaboard","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebbo2002%2Fvestaboard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebbo2002%2Fvestaboard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebbo2002%2Fvestaboard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebbo2002%2Fvestaboard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sebbo2002","download_url":"https://codeload.github.com/sebbo2002/vestaboard/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sebbo2002%2Fvestaboard/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34961549,"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-30T02:00:05.919Z","response_time":92,"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":"2026-01-20T23:11:50.644Z","updated_at":"2026-06-30T10:00:34.118Z","avatar_url":"https://github.com/sebbo2002.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n    \u003cimg src=\"https://d.sebbo.net/vestaboard-client-logo-CHm68XZRk-zNNTOboqFhVFbeuN6ccZkBsvGQxAJPx5GCBbSI2GnbSse6ovApzaULciWRnoOTzOny70L7Rcpv0SIkOPGIwCC3ZDsJFNeH1A00lB.png\" alt=\"Logo\" /\u003e\n\u003c/p\u003e\n\n# `@sebbo2002/vestaboard`\n\n[![MIT LICENSE](https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square)](https://github.com/sebbo2002/vestaboard/blob/develop/LICENSE)\n[![CI Status](https://img.shields.io/github/actions/workflow/status/sebbo2002/vestaboard/test-release.yml?style=flat-square)](https://github.com/sebbo2002/vestaboard/actions)\n\n\u003cbr /\u003e\n\nJust another client for the [Vestaboard](https://www.vestaboard.com/) [APIs](https://docs.vestaboard.com/). It supports\nthe [Subscription API](https://docs.vestaboard.com/methods), [Read/Write API](https://docs.vestaboard.com/read-write) and\nthe [Local API](https://docs.vestaboard.com/local). Written in Typescript.\n\nThe library also provides a small collection of helpers to format messages on the Vestaboard. This includes a `write()`\nmethod that automatically wraps text, a `fill()` method to fill the board with nice characters, or `table()` to conjure\nup a table on the board.\n\n## 📦 Installation\n\n    npm i --save @sebbo2002/vestaboard\n\n## ⚡️ Quick Start\n\n#### Draw some patterns using the Subscription API\n\n```js\nimport { SubscriptionAPI, Message } from '@sebbo2002/vestaboard';\nconst api = new SubscriptionAPI(\n    '3eadf7a8-6602-4bf5-92f4-970d36066958',\n    '******************************',\n);\nconst msg = new Message().fill('🟥🟧🟨🟩🟦🟪');\n\napi.postMessage(msg);\n```\n\n#### Write a calendar on a local Vestaboard\n\n```js\nimport { LocalAPI, Message } from '@sebbo2002/vestaboard';\nconst api = new LocalAPI('***');\nconst msg = new Message().table([\n    ['now', 'Daily'],\n    ['13:00', 'Super Secret Meeting'],\n    ['16:30', 'Awesome Presentation'],\n]);\n\napi.postMessage(msg);\n```\n\n#### Write Hello World on multiple local boards\n\n```js\nimport { MultipleBoards, LocalAPI, Message } from '@sebbo2002/vestaboard';\nconst board1 = new LocalAPI('***');\nconst board2 = new LocalAPI('***');\nconst boards = new MultipleBoards([board1, board2]);\n\nboards.postMessage('Hello World');\n```\n\nSee the [examples](./examples) folder for more examples.\n\n## 📑 API-Reference\n\n- [Index](https://sebbo2002.github.io/vestaboard/develop/reference/)\n    - [LocalAPI](https://sebbo2002.github.io/vestaboard/develop/reference/classes/LocalAPI.html)\n    - [Message](https://sebbo2002.github.io/vestaboard/develop/reference/classes/Message.html)\n    - [MultipleBoards](https://sebbo2002.github.io/vestaboard/develop/reference/classes/MultipleBoards.html)\n    - [ReadWriteAPI](https://sebbo2002.github.io/vestaboard/develop/reference/classes/ReadWriteAPI.html)\n    - [SubscriptionAPI](https://sebbo2002.github.io/vestaboard/develop/reference/classes/SubscriptionAPI.html)\n\n## 🚦 Tests\n\nSome unit tests use the Vestaboard API to run the tests. You can use the `.env.example` file as a template and enter your\ndata there accordingly.\n\n```\nnpm test\nnpm run coverage\n```\n\n## 🙆🏼‍♂️ Copyright and license\n\nCopyright (c) Sebastian Pekarek under the [MIT license](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsebbo2002%2Fvestaboard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsebbo2002%2Fvestaboard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsebbo2002%2Fvestaboard/lists"}