34 lines
1.5 KiB
Markdown
34 lines
1.5 KiB
Markdown
# Text Tools
|
||
|
||
Transform and inspect plain text locally in the browser.
|
||
|
||
Text 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 scope
|
||
|
||
- Ordered pipelines for line endings, trimming, whitespace, stable sorting and deduplication
|
||
- Locale-aware case conversion, Unicode NFC/NFD/NFKC/NFKD and best-effort Latin transliteration
|
||
- JSON/HTML/URL/Base64/hex escaping, wrapping and delimited-column selection
|
||
- Explicit UTF-8, UTF-16LE and Latin-1 file decoding plus text/code-point/line inventory
|
||
- Versioned JSON recipe import/export and per-step size/change reports
|
||
|
||
Pipelines are limited to 2,000,000 UTF-16 input units and an 8×/32 MiB output expansion. File input is limited to 16 MiB before decoding. Encoding is selected explicitly rather than guessed; compatibility normalisation, transliteration, narrow encodings and several transforms can be lossy, so source, result, and warnings remain visible. 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 check
|
||
npm run test:browser
|
||
```
|
||
|
||
## Release
|
||
|
||
`npm run release:artifact` creates a deterministic `release/text-tools-0.1.0.zip` and checksum sidecar.
|
||
|
||
## Licence
|
||
|
||
GPL-3.0-or-later. Runtime dependencies retain their own licences; see [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md).
|