# language-data

> Linguistic data useful for font testing and development.

Latest version **0.1.3** (published 2022-08-21) · MIT license · 0 weekly downloads

## Install

```sh
npm install language-data
pnpm add language-data
yarn add language-data
bun add language-data
```

## Health

**Score 20/100 (F)** — status: abandoned.

Positive: esm support; no vulnerabilities.

Warnings: low downloads; no types; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.1.3 |
| Published | 2022-08-21 |
| First published | 2019-08-23 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | ESM + CommonJS |
| Dependencies | 0 |
| Unpacked size | 120.6 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 42 |
| Author | Adam Jagosz |
| Maintainers | hyvyys |
| Keywords | dataset, pangram, sample text, language, alphabet, character set, font, typeface, typography, testing |

## Links

- npm: https://www.npmjs.com/package/language-data
- Repository: https://github.com/hyvyys/language-data
- Homepage: https://github.com/hyvyys/language-data#readme
- Issues: https://github.com/hyvyys/language-data/issues
- npm.io page: https://npm.io/package/language-data

## Alternatives

- [duck](https://npm.io/package/duck.md) — 4.2M weekly downloads
- [ava](https://npm.io/package/ava.md) — 560.2K weekly downloads
- [storybook-addon-module-mock](https://npm.io/package/storybook-addon-module-mock.md) — 71.7K weekly downloads
- [vest](https://npm.io/package/vest.md) — 50.1K weekly downloads
- [@ethereum-waffle/mock-contract](https://npm.io/package/@ethereum-waffle/mock-contract.md) — 40.0K weekly downloads

## Recent versions

- 0.1.3 (latest) — 2022-08-21
- 0.1.2 — 2021-07-11
- 0.1.1 — 2021-07-09
- 0.1.0 — 2020-11-07
- 0.0.16 — 2020-01-11
- 0.0.15 — 2020-01-09
- 0.0.14 — 2019-12-21
- 0.0.13 — 2019-12-07
- 0.0.12 — 2019-11-12
- 0.0.11 — 2019-11-11
- 0.0.10 — 2019-09-24
- 0.0.9 — 2019-09-23
- 0.0.8 — 2019-09-23
- 0.0.7 — 2019-09-22
- 0.0.6 — 2019-09-22
- … 5 more at https://npm.io/package/language-data/versions

## README

# Language Data

Linguistic data especially useful for font designers: pangrams, sample sentences, character sets and metadata for the languages of the world. Extent and completeness of the data is limited, contributions are welcome!

[Data structure](https://github.com/hyvyys/language-data/blob/master/dist/README.md)

[![npm](https://img.shields.io/npm/v/language-data)](https://www.npmjs.com/package/language-data)

# Usage

Install from NPM or from GitHub:

`npm i language-data`

`npm i hyvyys/language-data`

## ES6 module

```javascript
import LanguageData from 'language-data';

const polish = LanguageData.find(l => l.language == 'Polish');
console.log(JSON.stringify(polish, null, 2));
```

## CommonJS (Node.js)

```javascript
const LanguageData = require('./dist');

const polish = LanguageData.find(l => l.language == 'Polish');
console.log(JSON.stringify(polish, null, 2));
```

## Result

<details><summary>See result</summary>

  ```
  {
    "language": "Polish",
    "region": "European",
    "speakers": 40000000,
    "pangrams": [
      "Koń i żółw grali w kości z piękną ćmą u źródła."
    ],
    "letterings": [
      "Aerofłot Bóbr Część Ćmić Dyndasz Ernest Farfocel Gringo Hochsztapler Irbis Jajko Krokus
       Lalka Łękotka Mąkami Nanizać Obrok Ósemka Poprzestań Quiz Rzeżączka Schniesz Świąt Tarty
       Uzurpator Victoria Warszawa Xero Yeti Złorzeczyć Źrebak Żółtko"
    ],
    "gotchas": [
      {
        "topic": "łł",
        "tags": [
          "metrics"
        ],
        "description": "The łł combination an sometimes produces a busy area. A spacing, kerning or ligature solution is possible should the problem arise.",
        "tests": [
          "Kołłątaj Piłka Ełk Półkole Półton PÓŁTON Radziwiłłów"
        ]
      }
    ],
    "specialCharacters": "Ą ą Ć ć Ę ę Ł ł Ń ń Ó ó Ś ś Ź ź Ż ż",
    "htmlTag": "pl",
    "opentypeTag": "PLK",
    "script": "Latn",
    "scriptName": "Latin",
    "sentences": [],
    "paragraphs": [],
    "smallcaps": [],
    "alphabet": "A a Ą ą B b C c Ć ć D d E e Ę ę F f G g H h I i J j K k L l Ł ł M m N n Ń ń O o Ó ó P p Q q R r S s Ś ś T t U u V v W w X x Y y Z z Ź ź Ż ż",
    "optionalCharacters": "",
    "optionalCharactersNote": ""
  }
  ```
</details>

## Custom JSON

The data is exported as a JSON file in [`/dist/language-data.json`](https://github.com/hyvyys/language-data/blob/master/dist/language-data.json).

If you want a file limited to the data you're interested in, you can build it yourself. Clone the repository, install dependencies `npm i`, and build it `npm run build -- [fields]` where `[fields]` is a space-delimited list of fields you want to include, e.g.:

```
npm run build -- script speakers pangrams
```

The list of available fields with their descriptions is in [`/dist/README.md`](https://github.com/hyvyys/language-data/blob/master/dist/README.md).

# Roadmap

  * Add missing fields `pangram` — for example choose from http://clagnut.com/blog/2380/, but not all languages are present there.
  * Add missing fields `lettering` — for example using [WordFinder](https://hyvyys.github.io/word-finder).

---
_Source: https://npm.io/package/language-data · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
