A terminal emulator for macOS built with Odin and native Metal rendering.
- Native macOS Metal rendering (no OpenGL/SDL2 dependency)
- PTY (pseudo-terminal) support for shell integration
- ANSI escape sequence parsing
- Instanced rendering for efficient terminal cell drawing
- Real-time font texture rendering
Requires Odin compiler with dev-2026-05 or later for Metal bindings.
odin build src/main.odin -file -o:none -target:darwin_arm64 -out:ousrc/main.odin- Application entry point, NSApplication window setupsrc/pty/pty.odin- Pseudo-terminal handling via posix_openptsrc/term/terminal.odin- Terminal state and ANSI escape parsingsrc/render/renderer.odin- Metal renderer with instanced renderingsrc/render/font.odin- Font texture generationsrc/render/shaders.metal- Metal shaders for terminal rendering
Run the compiled ou binary. It spawns a shell (from $SHELL or /bin/sh) and renders output using Metal.