Files
unicode-tools/public/README.md
T
zemion 424605e61f
Verify / verify (push) Canceled after 0s
Release Unicode Tools 0.2.0
2026-09-02 07:50:37 +02:00

64 lines
3.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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.2.0 scope
- Search 159,866 assigned Unicode scalar records by official name, alias,
literal character, or code point, with script, block and category filters.
- Traverse any block or hexadecimal range in a 16-column virtualized code
chart with roving keyboard navigation and property cards. Only visible rows
are materialized, including when the entire U+0000U+10FFFF space is open.
- Browse and copy 3,952 fully-qualified emoji and components, inspect named
sequences, open practical symbol collections, and construct bounded
presentation-selector, skin-tone and ZWJ variants without claiming RGI
validity or font support.
- Inspect text as Unicode scalar values, UTF-16 positions, UTF-8 bytes,
JavaScript and HTML escapes, and browser-segmented grapheme clusters with
emoji/ZWJ/variation/modifier/flag/keycap/tag evidence.
- Decode lists of hexadecimal scalar values and compare NFC, NFD, NFKC and
NFKD normalization without losing sight of the original value.
- Compute UTS #39 confusable skeletons, compare skeleton collisions, display
pinned Identifier_Status/Identifier_Type evidence, and flag mixed scripts,
controls, default ignorables, combining repetition and non-NFC text as
review signals rather than security verdicts.
- 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. Unassigned scalars, private-use scalars,
permanently reserved noncharacters and UTF-16 surrogate code units are labelled
as distinct chart states; none is presented as an assigned character. Lone
surrogate copy is disabled because a surrogate is not a Unicode scalar value.
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.2.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/`.