Version 1.0

A fast, private text editor for Mac

For everyone who cares about privacy and performance, and fine-tuned for coders. TTE: TinyTextEditor opens a 5 GB file in 23 ms and has no network access at all.

Opens a 5 GB log in 23 ms

The first screen appears before the file is indexed. The line index for 57 million lines is ready in 413 ms, built in the background while you scroll and type.

Read how huge files open

A 5 GB server log open at line 41,205,118, with the project sidebar and six tabs

A keystroke takes 0.47 ms. About 35 times faster than one frame on a 60 Hz display.

Shorter is faster

Measured in the real editor on 10 November 2026, on an Apple M5 Max with 64 GB of RAM and a 120 Hz display. The files were already in the page cache.

  • Files are read with pread, never mapped
  • The line index costs 8 bytes per 64 KB of file
  • The document is a persistent tree
  • Long lines are cut into 4 KB segments
  • Each row is its own layer, moved on the GPU
Measure1 GB, 11M lines5 GB, 57M lines2 GB in one line
Open to first paint23 ms23 ms29 ms
Line index ready110 ms413 ms198 ms
Scroll frame, median0.07 ms0.07 ms0.25 ms
Fast fling frame, median0.45 ms0.47 ms1.0 ms
Keystroke at typing pace, median / 99th0.47 / 1.6 ms0.48 / 1.5 ms4.4 / 6.9 ms
Memory after opening40 MB40 MB50 MB
Memory, idle after heavy use70 MB71 MB82 MB

Times include committing the frame to Core Animation. Literal search runs at 3.9 GB/s and regex search at about 83 MB/s.

The chart’s last bar is an estimate: we installed and timed no other editor. Zed’s published comparison, read 10 November 2026, gives under 1 second for its own launch and 3 to 5 seconds or more for VS Code with extensions, and the label gives that whole range. The bar is drawn solid to 3.75 seconds, a point inside the range given for VS Code, and hatched from there to 5. All the bars share one scale. At that scale a keystroke would be about a tenth of a pixel wide, so it is drawn as a single line.

Built and optimized for the Mac. 49× faster than TextEdit at 5 GB.

MeasureTinyTextEditorVS CodeIntelliJ IDEASublime TextTextEditWindows Notepad
Built forHandcrafted, optimized and fine‑tuned for Apple silicon MacsThree platforms, one Electron runtimeThree platforms, one Java runtimeMac, Windows, LinuxThe Mac. Comes with macOSWindows. Comes with Windows
Launch0.24 s Over 2× faster than TextEdit, from click to ready to use3 to 5 s or more, says ZedNot publishedNot published0.57 s measured, same testNot published
Open a 5 GB file0.27 s 49× faster than TextEdit. 23 ms once running30 MB then highlighting and folding turn off20 MB by default; 2.5 MB for code assistanceNo limit published13.3 s from closed, measured1 GB or so, then it refuses the file
Memory and disk40 MB 120× less than TextEdit with 5 GB open. A 4.6 MB app1 GB of RAM, under 500 MB of disk8 GB of RAM, 10 GB of disk, 4 coresNot published5 GB with that file open, measuredNot published
What leaves itNothing No network access, enforced by macOSUsage and crash data unless turned off; Copilot if signed inError reports by default; usage data and AI if you opt inA licence check, say its staff. No privacy policy publishediCloud, Apple Intelligence, analytics, if turned onAI features send your text to Microsoft once signed in

TinyTextEditor and TextEdit were timed on the same Mac on 11 November 2026, from asking macOS to open the closed app until its window was on screen: warm launches, no document. That reads about 0.1 s more than the 136 ms above, which starts with the process. Everything else is published, read 10 and 11 November 2026. VS Code: Electron, large files, requirements, telemetry, Copilot; its launch time is Zed’s figure, not Microsoft’s. IntelliJ IDEA: file limits, runtime and requirements, data sharing, AI Assistant. Sublime Text: licence check and data collection. TextEdit: iCloud and Writing Tools, Apple Intelligence, analytics. Notepad: size limit, AI features. “Not published” means the maker gives no figure.

Nothing leaves your Mac

TinyTextEditor ships with no network entitlement, so macOS itself refuses any connection the app could attempt. There is no telemetry, no account and no auto-update.

  • Reads only the files and folders you choose
  • Contains no third-party code and loads no plugins
  • Saves atomically, so a failed save leaves the original untouched

Read the privacy policy

The editor draws hidden characters in red

Invisible Unicode can make code read one way and run another, an attack known as Trojan Source. TinyTextEditor draws bidi controls and zero-width characters as red boxes and warns when bidi controls are present.

  • The bytes on disk stay exactly as they were
  • Invalid UTF-8 and binary data round-trip unchanged

Read about the red boxes

A Swift file with a warning about bidirectional control characters; eight hidden characters are drawn as red boxes

Multiple cursors work the way an IDE’s do

⌃G selects the word under the cursor, then adds each next occurrence. Every cursor types, moves and deletes together.

The films are the real app, recorded frame by frame. They play when this section is on screen.

Editing commands on IntelliJ’s keymap

Syntax highlighting covers 30 languages, from Swift, Rust and Python to SQL, JSON and Markdown.

⌃G selects the next occurrence. You can also split a selection into lines, add cursors above and below, or Option-drag a column.

Four cursors selecting the same word on four lines of a Swift file