TextIt is a Svelte 5 text/file converter built for modern chat and developer workflows.
When message size limits get in the way, TextIt helps you package content into uploadable files fast: paste text, upload a file, convert to your target format, and download.
- Client-side only processing (privacy-first)
- Upload button for phone and desktop
- Drag and drop support
- Correct filename behavior (uses your chosen filename)
- Preview before download
- Download one format or all formats
- Keyboard shortcuts for power users
- Componentized Svelte 5 runes-mode codebase
- LLM context packaging: Convert long notes/prompts into uploadable files when chat input is limited.
- Engineering handoff: Export logs and traces as CSV/JSON for sharing and triage.
- Documentation flow: Convert rough notes into Markdown or HTML for wikis and PRs.
- API prep: Build JSON/XML payload templates quickly.
- Research and writing: Move draft text into RTF/LaTeX-ready formats.
- Binary-to-text packaging: Wrap small binary files as base64 text blocks for text-only channels.
.txtplain text.mdmarkdown.htmlHTML document.jsonstructured JSON payload.csvline-by-line CSV.xmlXML document.rtfrich text format.texLaTeX article template
pnpm install
pnpm devOpen the local URL shown in the terminal (usually http://localhost:5173).
pnpm lint
pnpm checkpnpm build
pnpm preview- Paste text or upload a file using the Upload file button.
- Optionally adjust filename and text transforms.
- Preview a format if needed.
- Download one format or Download all.
Ctrl/Cmd + S: quick download as.txtCtrl/Cmd + K: toggle stats panel
src/
lib/
components/
ActionToolbar.svelte
EditorPanel.svelte
FormatGrid.svelte
PageHeader.svelte
PreviewModal.svelte
StatsPanel.svelte
UseCases.svelte
utils/
files.ts
formats.ts
text.ts
routes/
+layout.svelte
+page.svelte
- Svelte 5 (runes mode)
- SvelteKit
- Tailwind CSS v4
- TypeScript
- Text-like files are loaded directly as text.
- Non-text files can be packaged as base64 text when small enough.
- Very large binary files are blocked to avoid generating unusable output.
Issues and pull requests are welcome.
Useful contribution ideas:
- Add new export formats
- Add test coverage for conversion utilities
- Improve accessibility and keyboard interactions
- Add optional timestamp naming toggle
MIT License. See LICENSE.