Javascript implemenation of SuttaCentral Voice Assistance (SC-Voice) for vision-impaired. Includes:
- TTS adapter for Amazon AWS Polly Text-to-Speech
- TTS adapter for IBM Watson Text-to-Speech API
- utilites for parsing SuttaCentral Pootl translations
- romanized search for Pali terms (e.g., Mulapariyayasutta vs. Mūlapariyāyasutta)
- Linux (tested on Ubuntu 16.04.5 LTS/xenial)
- AWS Polly account (recommended)
- IBM Watson Text-to-Speech account (optional)
With a Linux console, install the software:
git clone https://github.com/sc-karl/sc-voice.git
cd sc-voice
./scripts/init.sh
As part of installation you will need to configure one TTS service adapter.
The Amazon AWS Polly Text-to-Speech service can be used to convert sutta text to speech. To enable AWS Polly, you will need to configure your credentials
aws configure
The IBM Watson Text-to-Speech API can be used to convert sutta text to speech. To use Watson, you will need an IBM Cloud Watson account. To enable Watson translation, first copy your Watson JSON credentials, then do the following:
cat > local/watson-credentials.json- paste credentials
- ENTER
- CTRL-D
SC-Voice can be installed as a systemd service that will be launched at boot. For example, in Ubuntu 16.04 you can type the following from a console window in the sc-voice folder:
./scripts/sc-voice-daemon.shRestart server to launch SC-Voice.
| Command line script | Description |
|---|---|
npm run test |
Run service unit tests. The unit tests require AWS Polly. Tests for IBM Watson are disabled by default (see test/watson.js). |
npm run serve |
Compile and reload SC-Voice Vue for development at http://localhost:8080 |
npm run build |
Create production Vue build in dist folder |
npm run lint |
Run esLint to check *.js and *.vue files ` |
- src contains Javascript source code
- test contains Javascript unit tests
- scripts contains miscellaneous scripts
- local contains local content not archived in git
- public Vue/Vuetify public HTML assets
- words contains language lexicons for search and speech.