{"id":13403773,"url":"https://github.com/cboard-org/cboard","last_synced_at":"2025-03-14T08:32:08.691Z","repository":{"id":37270442,"uuid":"81575759","full_name":"cboard-org/cboard","owner":"cboard-org","description":"Augmentative and Alternative Communication (AAC) system with text-to-speech for the browser","archived":false,"fork":false,"pushed_at":"2024-04-22T03:53:36.000Z","size":220323,"stargazers_count":640,"open_issues_count":160,"forks_count":157,"subscribers_count":23,"default_branch":"master","last_synced_at":"2024-05-01T09:50:23.029Z","etag":null,"topics":["aac","accessibility","assistive-technology","autism","cerebral-palsy","communication","communication-board","disabilities","javascript","progressive-web-app","react","speech","symbols","text-to-speech","tts"],"latest_commit_sha":null,"homepage":"https://www.cboard.io","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cboard-org.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"roadmap.md","authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"open_collective":"cboard"}},"created_at":"2017-02-10T15:00:45.000Z","updated_at":"2024-04-24T05:44:54.000Z","dependencies_parsed_at":"2023-02-18T00:01:59.424Z","dependency_job_id":"a634a9fe-320b-47f4-af73-d6479e7191fd","html_url":"https://github.com/cboard-org/cboard","commit_stats":{"total_commits":2969,"total_committers":70,"mean_commits":42.41428571428571,"dds":0.6513977770293028,"last_synced_commit":"3e39970af46d9584f18852346202f89cdeab89fb"},"previous_names":[],"tags_count":67,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cboard-org%2Fcboard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cboard-org%2Fcboard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cboard-org%2Fcboard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cboard-org%2Fcboard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cboard-org","download_url":"https://codeload.github.com/cboard-org/cboard/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243547496,"owners_count":20308713,"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":["aac","accessibility","assistive-technology","autism","cerebral-palsy","communication","communication-board","disabilities","javascript","progressive-web-app","react","speech","symbols","text-to-speech","tts"],"created_at":"2024-07-30T19:01:34.404Z","updated_at":"2025-03-14T08:32:08.634Z","avatar_url":"https://github.com/cboard-org.png","language":"JavaScript","funding_links":["https://opencollective.com/cboard"],"categories":["JavaScript","Projects by main language","⛪ Open Source","Accessibility Packages and Tools"],"sub_categories":["javascript","Specialized Tools"],"readme":"[![Digital public good](https://github.com/cboard-org/cboard/blob/master/public/images/dpg-badge.png)](https://digitalpublicgoods.net/registry/)\n[![Crowdin](https://d322cqt584bo4o.cloudfront.net/cboard/localized.svg)](https://crowdin.com/project/cboard)\n[![Backers on Open Collective](https://opencollective.com/cboard/backers/badge.svg)](#backers)\n[![Sponsors on Open Collective](https://opencollective.com/cboard/sponsors/badge.svg)](#sponsors)\n[![cboard-org](https://circleci.com/gh/cboard-org/cboard.svg?style=shield)](https://app.circleci.com/pipelines/github/cboard-org/cboard)\n# Cboard - AAC Communication Board for browsers\n\n[Cboard](https://app.cboard.io) is an augmentative and alternative communication (AAC) web application, allowing users with speech and language impairments (autism, cerebral palsy) to communicate with symbols and text-to-speech.\n\n![Cboard GIF demo](public/videos/demo.gif)\n\nThe app uses the browser's Speech Synthesis API to generate speech when a symbol is clicked. There are thousands of symbols from the most popular AAC symbol libraries to choose from when creating a board. Cboard is available in 40 languages (support varies by platform - Android, iOS, Windows).\n\n**We're using Discord to collaborate, join us at: https://discord.gg/TEH8uxh**\n\n## How does it work?\n\nThis video shows Srna. She is one of the children who have received the Cboard Communicator thanks to UNICEF’s [\"For every child, a voice\"](https://www.unicef.org/innovation/stories/giving-every-child-voice-aac-technology) project.\n\n\u003ca href=\"https://youtu.be/wqLauXnyLhY\"\u003e\u003cimg src=\"https://img.youtube.com/vi/wqLauXnyLhY/0.jpg\" alt=\"Real Look Autism Episode 8\" width=\"480\" height=\"360\"\u003e\u003c/a\u003e\n\n## Translations\n\nThe app supports 40 languages.\nLanguages were machine translated and require proofreading: if you want to help proofread, please use our translation management platform: https://crowdin.com/project/cboard\n\n**You do not need to be a programmer!**\n\nTranslations play a major role in this project and they contribute a lot for the inclusion of children, specially in non developed countries. Please consider collaborating with us!\n\n### Translations for developers\n\nIn order to pull the latest translations from CrowdIn into the codebase, you can run `yarn translations:pull`. This will update all language files such as `en.json` as well as the central `cboard.json` file. Please note that this requires the CrowdIn API key to be available in the `.private` config file. Refer to [Secrets Management](#secrets-management). After the script completes, changes to the translation files will need to be committed to the repo by the usual process.\n\n## Getting Started\n\n### `yarn start`\n\nRuns the app in development mode.\u003cbr\u003e\nOpen [http://localhost:3000](http://localhost:3000) to view it in the browser.\n\nThe page will reload if you make edits.\u003cbr\u003e\nYou will see the build errors and lint warnings in the console.\n\n### `yarn test`\n\nRuns the test watcher in an interactive mode.\u003cbr\u003e\nBy default, runs tests related to files changed since the last commit.\n\n[Read more about testing.](https://github.com/facebookincubator/create-react-app/blob/master/packages/react-scripts/template/README.md#running-tests)\n\n### `yarn build`\n\nBuilds the app for production to the `build` folder.\u003cbr\u003e\nIt correctly bundles React in production mode and optimizes the build for the best performance.\n\nThe build is minified and the filenames include the hashes.\u003cbr\u003e\nBy default, it also [includes a service worker](https://github.com/facebookincubator/create-react-app/blob/master/packages/react-scripts/template/README.md#making-a-progressive-web-app) so that Cboard loads from local cache on future visits.\n\nCboard is ready to be deployed.\n\n### `yarn build-cordova-debug`\n\nUse this to produce non-minified build for use in debugging within Cordova. It uses `craco` \u0026 `craco.config` to customize webpack operation without ejecting react.\n\nSee [CBoard](https://github.com/nous-/cboard) repo for packaging this CBoard application within Cordova.\n\n## Docker getting started\n\n### `make image`\n\nCreates a Docker image with cboard built for production. The image is tagged as cboard:latest.\n\n### `make run`\n\nRuns the cboard:latest Docker image on port 5000.\n\n## Secrets Management\n\nSome external services have APIs we need to access, and these require API keys. To prevent open disclosure of these keys in the public repository, while still tracking them with the code, we encrypt some secrets into a GPG file. These files are `env/local-private.gpg` and `env/prod-private.gpg`.\n\nIn order to access the secrets, you must request the `ENCRYPTION_KEY` from @shaycojo and then run the decrypt script: `ENCRYPTION_KEY={key-goes-here} yarn decrypt:local` (or `prod`), which will create the file `.private/local.js` with the secrets in plain text where the scripts can access them. **The files in `.private` should never be committed to the repository.**\n\nIf you need to add or change a secret, make the change to the `.private/local.js` file, and then run the encryption script: `ENCRYPTION_KEY={key-goes-here} yarn encrypt:local` (or `prod`).\n\n_Note: These keys/secrets are *not* required to run or develop Cboard._ They are used with scripts by some team members.\n\n## About the Cboard community\n\n[![Cauldron dashboard and metrics for the Cboard project community](https://cauldron.io/project/1683/stats.svg)](https://cauldron.io/project/1683 \"Cauldron dashboard and metrics for the Cboard project community\")\n\n## Thanks\n\n### Symbols sources\n\n\u003cimg src=\"https://mulberrysymbols.org/assets/examples/hello.svg\" href=\"https://mulberrysymbols.org\" alt=\"Mulberry\" width=\"40\" height=\"40\"\u003e [Mulberry](https://mulberrysymbols.org/)\n\n\u003cimg src=\"https://static.arasaac.org/images/arasaac-logo.svg\" href=\"https://mulberrysymbols.org\" alt=\"ARASAAC\" width=\"40\" height=\"40\"\u003e [ARASAAC](http://www.arasaac.org/)\n\n\u003cimg src=\"https://globalsymbols.com/assets/logo-with-text-5c57659e34824e7b2907a36895745f9e39e7f1c015ea77d6968eb75a52c8389f.svg\" href=\"https://globalsymbols.com\" alt=\"Global Symbols\" width=\"40\" height=\"40\"\u003e [Global Symbols](https://globalsymbols.com/)\n\n### Translation\n\n\u003cimg src=\"https://support.crowdin.com/assets/logos/crowdin-symbol.png\" href=\"https://crowdin.com/\" alt=\"Crowdin\" width=\"40\" height=\"40\"\u003e[  Crowdin](https://crowdin.com/) - for providing the localization management platform.\n\n### Testing platform\n\n\u003cimg src=\"https://avatars2.githubusercontent.com/u/1119453?s=200\u0026v=4\" href=\"https://www.browserstack.com/\" alt=\"Browserstack\" width=\"40\" height=\"40\"\u003e[  Browserstack](https://www.browserstack.com/) - for providing the automation infrastructure for testing.\n\n### Development\n\n\u003cimg src=\"./public/images/sponsers/css-tricks.svg\" alt=\"CSS-Tricks\" width=\"120\" height=\"39\"\u003e[  CSS Tricks](https://css-tricks.com) - for providing feedback and support from the early stage.\n\n## Contributors\n\nThis project exists thanks to all the people who contribute. [[Contribute](CONTRIBUTING.md)].\n\u003ca href=\"https://github.com/cboard-org/cboard/graphs/contributors\"\u003e\u003cimg src=\"https://opencollective.com/cboard/contributors.svg?width=890\u0026button=false\" /\u003e\u003c/a\u003e\n\n## Backers\n\nThank you to all our backers! 🙏 [[Become a backer](https://opencollective.com/cboard#backer)]\n\n\u003ca href=\"https://opencollective.com/cboard#backers\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/cboard/backers.svg?width=890\"\u003e\u003c/a\u003e\n\n## Sponsors\n\nSupport this project by becoming a sponsor. Your logo will show up here with a link to your website. [[Become a sponsor](https://opencollective.com/cboard#sponsor)]\n\n\u003ca href=\"https://opencollective.com/cboard/sponsor/0/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/cboard/sponsor/0/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/cboard/sponsor/1/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/cboard/sponsor/1/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/cboard/sponsor/2/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/cboard/sponsor/2/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/cboard/sponsor/3/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/cboard/sponsor/3/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/cboard/sponsor/4/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/cboard/sponsor/4/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/cboard/sponsor/5/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/cboard/sponsor/5/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/cboard/sponsor/6/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/cboard/sponsor/6/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/cboard/sponsor/7/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/cboard/sponsor/7/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/cboard/sponsor/8/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/cboard/sponsor/8/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/cboard/sponsor/9/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/cboard/sponsor/9/avatar.svg\"\u003e\u003c/a\u003e\n\n\n## :memo: Legal \u0026 licenses\n\nCopyright © 2017-2024, Assistive Technology LLC \u0026 Cboard contributors.\n\nThis program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 3 as published by the Free Software Foundation.\n\n* Code - [GPLv3](https://github.com/cboard-org/cboard/blob/master/LICENSE.txt)\n* Mulberry Symbols - [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/)\n* ARASAAC Symbols - [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcboard-org%2Fcboard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcboard-org%2Fcboard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcboard-org%2Fcboard/lists"}