OneTalker is a free, open-source Augmentative and Alternative Communication (AAC) desktop app, created for my son Ben - and shared to support others who need a voice. https://onetalker.org
  • Rust 93.9%
  • Shell 6.1%
Find a file
Gavin Henry e0ebe8c4a8
All checks were successful
cargo test / test (push) Successful in 3m12s
Main CI / test (push) Successful in 4m56s
Update for AI PRs.
2026-03-20 12:30:52 +00:00
.forgejo/workflows Add enable-email-notifications: true to CI jobs. 2026-03-13 10:27:11 +00:00
.github
assets Log whether label is readable on tile background. Lighten red and pink Fitzgerable by 20%. Closes #64. Closes #65. 2026-03-19 20:52:58 +00:00
crates Fix default params when searching. 2026-03-17 22:06:20 +00:00
packaging Update Windows OneTalker app desc. 2026-02-04 16:39:02 +00:00
scripts Enhancement: macOS - make binary name OneTalker to resolve menu issue. Closes #42 2026-02-18 12:44:47 +00:00
src Clean up camera test. 2026-03-20 12:07:05 +00:00
supply-chain
.gitignore Bringing in clang for flatpak 2026-01-30 12:08:23 +00:00
build.rs Set CalVer now and git_hash. Plus handle no json loading error better - create a Layout::default() 2026-01-08 22:15:26 +00:00
Cargo.lock More camera work. Refs #44 2026-03-17 22:49:47 +00:00
Cargo.toml More camera work. Refs #44 2026-03-17 22:49:47 +00:00
CHANGELOG.md Update CHANGELOG.md 2026-03-16 20:56:33 +01:00
CODE_OF_CONDUCT.md
config.toml
CONTRIBUTING.md Update for AI PRs. 2026-03-20 12:30:52 +00:00
COPYING
COPYRIGHT
FEATURES_FULL.md
ghenry_at_onetalker_org_pgp_key.txt Security Policy and my GPG public key 2026-01-23 22:03:39 +00:00
LICENSE.GPL-3.0-only
OneTalker-2026-01-22.gif Latest gif, ready for tagging 2026-01-22 19:51:28 +00:00
onetalker-icon-bg-trans.png Windows ico file 2026-01-04 10:56:40 +00:00
onetalker-icon-macos.png Packaging updates. 2026-01-07 21:03:06 +00:00
onetalker-icon.png
onetalker-logo.png
onetalker.ico Windows ico file 2026-01-04 10:56:40 +00:00
PRIVACY.md Add Privacy Policy. 2026-01-22 13:43:50 +00:00
README.md Contributions notes. 2026-03-02 14:50:31 +00:00
renovate.json Update renovate.json 2026-03-02 21:59:09 +01:00
rust-toolchain.toml
SECURITY.md Security Policy and my GPG public key 2026-01-23 22:03:39 +00:00
VERSION Update release date and new version 2026-02-16 22:01:15 +00:00

OneTalker Logo

Stability: Active CodeBerg release (latest SemVer) Build and Test Made with iced

An Augmentative and Alternative Communication (AAC) Aid that I wrote for my son Ben, which is hopefully useful for others too. It's written in Rust for reliability and speed and uses iced underneath. Ben DOES NOT tolerate slow things, and this absolutely MUST NOT crash either! His current AAC apps are slow, so he doesn't like using them. I hope he likes OneTalker better.

Using the feature list from OpenAAC as a guide, OneTalker aims to provide a simple, easy to use, and highly customisable AAC application that can be used on a variety of platforms including Windows, macOS, Linux, and potentially others in the future.

I personally like this:

From the AAC Institute Mission Statement:

The two most important values expressed by people who rely on AAC are:

  1. saying exactly what they want to say
  2. saying it as fast as they can

Progress To Date

OneTalker Demo GIF

OneTalker Feature Checklist

As I complete more features, I will check them off below. Please raise an issue if some are more important to you than others.

Feature Key

  • 🟢 Standard Across Apps
  • Most Apps Have
  • Top Apps Have

Display

  • 🟢 words and symbols
  • 🟢 grid layout
  • 🟢 links to other boards
  • 🟢 say something different from button text
  • symbols-only option
  • words-only option
  • text on top/bottom
  • skin tone selection for symbols with people
  • high contrast option for all symbols

Customization

  • 🟢 add new buttons
  • 🟢 upload symbols
  • 🟢 rearrange layout
  • hide/show buttons
  • upload sounds
  • custom grid size
  • custom text color
  • button border and fill color
  • search through symbol library for images
  • add photos from device/camera
  • easily switch symbol sets
  • color coding of buttons by word type

Access

  • 🟢 touch
    • 🟢 select from touch-start
    • 🟢 select from touch-release
    • hold to select
    • user-defined hold duration
  • scanning
  • adaptations

Sentence Box

  • 🟢 build whole sentences
  • 🟢 tap to speak sentence
  • 🟢 clear button
  • 🟢 backspace button
  • clear sentence on select
  • quick access phrases
  • option to include images
  • saved phrases
  • hold that thought
  • repeat louder
  • share sentence externally

Vocabulary

  • 🟢 pre-populated vocabularies
  • 🟢 places for personalized words
  • core words in pre-populated vocabularies
  • category-based layout option
  • multiple grid sizes pre-built
  • motor planning-based layout option
  • option to auto-return to home board

Keyboard

  • 🟢 spelling by keys
  • word prediction
  • punctuation keys
  • capitalization
  • personalized word prediction results
  • read last sentence on punctuation end

Voice

  • 🟢 standard TTS
  • playback recorded audio
  • premium voices (Windows only at present)
  • alternate scanning voice
  • alternate audio fishing voice
  • adjust rate, pitch, volume for TTS
  • child voices

Language & Inflections

  • support for multiple languages

Extras

  • 🟢 works even when offline (images, links, audio output)
  • copy plaintext to clipboard
  • data logging
  • easily-reachable "alert" button
  • shortcut for current day/month/etc. in spoken content
  • navigation sidebar
  • find a button
  • print vocabulary to pdf

For full feature descriptions, including sub-options and access methods, please see FEATURES_FULL.md

Symbols

We use Mulberry Symbols which are Copyright 2018/19 Steve Lee - This work is licensed under the Creative Commons Attribution-ShareAlike 2.0 UK: England & Wales License.

Later you'll be able to import your own symbols.

License

OneTalker is released under the GPL-3.0-only License. For more details, see the LICENSE file.

Contact

For any questions, suggestions, or issues, please open an issue on our CodeBerg repository.

Website

The public facing OneTalker website - onetalker.org

Thanks

Special thanks to the team behind Halloy IRC Client as I learnt a lot from their Rust codebase and borrowed quite a few things and ideas!

Recognition

  • Massive thanks to Polesznyák Márk László - pml68 for taking the time to package up OneTalker for Arch Linux and making it available on the AUR. Amazing work, thank you!
  • Thanks to @migmedia for our first ever pull request! Very kind of you. See #7 for more details.
  • Thanks to @dwloef for cleaning up things and clarifying my understanding of when to use Task::Perform and async