JSPM

  • Created
  • Published
  • Downloads 465
  • Score
    100M100P100Q98291F
  • License MIT

Speech Markdown parser and formatters in TypeScript.

Package Exports

  • speechmarkdown-js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (speechmarkdown-js) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

TypeScript version Node.js version MIT

speechmarkdown-js

Speech Markdown grammar, parser, and formatters for use with JavaScript.

This project is a work-in-progress. All volunteers are appreciated!

Find the architecture here

Quick start

SSML - Amazon Alexa

Convert Speech Markdown to SSML for Amazon Alexa

const smd = require('speechmarkdown-js');

const markdown = `Sample [3s] speech [250ms] markdown`;
const options = {
    platform: 'amazon-alexa'
};

const speech = new smd.SpeechMarkdown();
const ssml = speech.toSSML(markdown, options);

The resulting SSML is:

<speak>
Sample <break time="3s"/> speech <break time="250ms"/> markdown
</speak>

SSML - Google Assistant

Convert Speech Markdown to SSML for Google Assistant

const smd = require('speechmarkdown-js');

const markdown = `Sample [3s] speech [250ms] markdown`;
const options = {
    platform: 'google-assistant'
};

const speech = new smd.SpeechMarkdown();
const ssml = speech.toSSML(markdown, options);

The resulting SSML is:

<speak>
Sample <break time="3s"/> speech <break time="250ms"/> markdown
</speak>

Plain Text

Convert Speech Markdown to Plain Text

const smd = require('speechmarkdown-js');

const markdown = `Sample [3s] speech [250ms] markdown`;
const options = {};

const speech = new smd.SpeechMarkdown();
const text = speech.toText(markdown, options);

The resulting text is:

Sample speech markdown

Working on this project?

Grammar

The biggest place we need help right now is with the completion of the grammar and formatters.

Short Format

  • break
  • emphasis - strong
  • emphasis - moderate
  • emphasis - none
  • emphasis - reduced
  • ipa
  • sub

Standard Format

  • address
  • audio
  • break (time)
  • break (strength)
  • cardinal
  • characters
  • date
  • emphasis
  • expletive / bleep
  • fraction
  • interjection
  • ipa
  • lang
  • lang (section)
  • number
  • ordinal
  • phone / telephone
  • pitch
  • rate
  • sub
  • time
  • unit
  • voice
  • voice (section)
  • volume / vol
  • whisper

Available scripts

  • clean - remove coverage data, Jest cache and transpiled files,
  • build - transpile TypeScript to ES6,
  • build:watch - interactive watch mode to automatically transpile source files,
  • lint - lint source files and tests,
  • test - run tests,
  • test:watch - interactive watch mode to automatically re-run tests

License

Licensed under the MIT. See the LICENSE file for details.