54 lines
2.3 KiB
Markdown
54 lines
2.3 KiB
Markdown
# Unicode Tools
|
|
|
|
Explore Unicode characters, scripts, emoji and text locally.
|
|
|
|
Unicode Tools is a standalone local-first application in the [add·ideas Toolbox](https://git.add-ideas.de/lotobo/toolbox-portal). Inputs are processed in the browser and are not uploaded.
|
|
|
|
## Version 0.1.0 scope
|
|
|
|
- Search 159,866 assigned Unicode scalar records by official name, alias,
|
|
literal character, or code point, with script, block and category filters.
|
|
- Browse and copy 3,952 fully-qualified emoji and components, inspect named
|
|
sequences, and open practical symbol collections.
|
|
- Inspect text as Unicode scalar values, UTF-16 positions, UTF-8 bytes,
|
|
JavaScript and HTML escapes, and browser-segmented grapheme clusters.
|
|
- Decode lists of hexadecimal scalar values and compare NFC, NFD, NFKC and
|
|
NFKD normalization without losing sight of the original value.
|
|
- Compute a UTS #39 confusable skeleton, show applied mappings, and flag mixed
|
|
primary scripts as a review signal rather than a security verdict.
|
|
- Inspect character properties and optionally load selected Unihan readings,
|
|
definitions and radical/stroke fields for Han ideographs.
|
|
- Download an auditable source-identity report for every pinned data input.
|
|
|
|
The catalog is generated from checksum-pinned Unicode Consortium 17.0 data. It
|
|
does not scrape or redistribute descriptions, artwork, or annotations from
|
|
Symbl or another symbol website. Private-use code points and UTF-16 surrogates
|
|
remain visible as ranges, but are not presented as assigned characters.
|
|
|
|
The application treats every input as untrusted, applies explicit resource
|
|
limits, and never interprets text as active content. The checked-in catalog can
|
|
be regenerated only after each upstream file matches its recorded SHA-256.
|
|
See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) and
|
|
[docs/PRIVACY-SECURITY.md](docs/PRIVACY-SECURITY.md).
|
|
|
|
## Development
|
|
|
|
Requires Node.js 22 and npm 11.
|
|
|
|
```sh
|
|
npm ci
|
|
npm run data:generate # optional, requires the pinned upstream files or network
|
|
npm run check
|
|
npm run test:browser
|
|
```
|
|
|
|
## Release
|
|
|
|
`npm run release:artifact` creates a deterministic `release/unicode-tools-0.1.0.zip` and checksum sidecar.
|
|
|
|
## Licence
|
|
|
|
Application code is GPL-3.0-or-later. Unicode data and documentation are used
|
|
under Unicode-3.0; runtime dependencies retain their own licences. See
|
|
[THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md) and `LICENSES/`.
|