Giter VIP home page Giter VIP logo

phonetic-alphabet-converter's Introduction

phonetic-alphabet-converter

NPM

NPM version Build Status Coverage Status

Converts string to NATO phonetic alphabet words:

PhoneticAlphabetConverter(string[, alphabet])

Example

import converter from 'phonetic-alphabet-converter';
converter('abc'); // ['alpha', 'bravo', 'charlie']

Site | JSFiddle | Repl.it

Install

NPM:

npm install phonetic-alphabet-converter --save

Yarn:

yarn add phonetic-alphabet-converter

CDN:

<script src="https://unpkg.com/phonetic-alphabet-converter@latest/umd/phonetic-alphabet-converter.min.js"></script>
<script>
  window.PhoneticAlphabetConverter.default(/* string */);
</script>

Usage

Import module:

// ES Modules
import converter from 'phonetic-alphabet-converter';

// CommonJS
const converter = require('phonetic-alphabet-converter').default;

Parse string:

converter('Hello, world!');
// ['hotel', 'echo', 'lima', 'lima', 'oscar', 'whiskey', 'oscar', 'romeo', 'lima', 'delta']

The string is lowercased and characters not found on the alphabet map are ignored.

If the string is blank, an empty array is returned:

converter('');
// []

If the first argument is not a string, then an error will be thrown:

converter();
// TypeError: First argument must be a string

Second Argument

By default, the converter uses a mapping of the NATO phonetic alphabet:

import { NATO_PHONETIC_ALPHABET } from 'phonetic-alphabet-converter';

To override that, you can pass a custom object to the second argument:

converter('abc', {
  a: 'Amsterdam',
  b: 'Baltimore',
  c: 'Casablanca',
});
// ['Amsterdam', 'Baltimore', 'Casablanca']

Or you can assign values to the default alphabet map:

import { NATO_PHONETIC_ALPHABET } from 'phonetic-alphabet-converter';

converter('abc', {
  ...NATO_PHONETIC_ALPHABET,
  a: 'alfa',
});
// ['alfa', 'bravo', 'charlie']

Testing

Run tests with coverage:

npm test

Run tests in watch mode:

npm run test:watch

Lint files:

npm run lint

Fix lint errors:

npm run lint:fix

Release

Only collaborators with credentials can release and publish:

npm run release
git push --follow-tags && npm publish

License

MIT

phonetic-alphabet-converter's People

Contributors

remarkablemark avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.