zemion 424605e61f
Verify / verify (push) Canceled after 0s
Release Unicode Tools 0.2.0
2026-09-02 07:50:37 +02:00
2026-09-02 07:50:37 +02:00
2026-09-01 02:38:25 +02:00
2026-09-02 07:50:37 +02:00
2026-09-02 07:50:37 +02:00
2026-09-02 07:50:37 +02:00
2026-09-02 07:50:37 +02:00
2026-09-01 02:38:25 +02:00
2026-09-01 02:38:25 +02:00
2026-09-01 02:38:25 +02:00
2026-09-02 07:50:37 +02:00
2026-09-01 02:38:25 +02:00
2026-09-01 02:38:25 +02:00
2026-09-01 02:38:25 +02:00
2026-09-01 02:38:25 +02:00
2026-09-02 07:50:37 +02:00
2026-09-02 07:50:37 +02:00
2026-09-02 07:50:37 +02:00
2026-09-01 02:38:25 +02:00
2026-09-02 07:50:37 +02:00
2026-09-01 02:38:25 +02:00
2026-09-01 02:38:25 +02:00
2026-09-01 02:38:25 +02:00
2026-09-01 02:38:25 +02:00

Unicode Tools

Explore Unicode characters, scripts, emoji and text locally.

Unicode Tools is a standalone local-first application in the add·ideas Toolbox. 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 and docs/PRIVACY-SECURITY.md.

Development

Requires Node.js 22 and npm 11.

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 and LICENSES/.

S
Description
Local-first Unicode character, block, script, emoji and text exploration for add·ideas Toolbox.
Readme GPL-3.0
2.8 MiB
2026-09-02 07:50:37 +02:00
Languages
TypeScript 70.6%
JavaScript 20.5%
CSS 8.5%
HTML 0.4%