Repolode
ilai-deutel

ilai-deutel/kibi

A terminal text editor written in Rust in at most 1024 lines of code, inspired by the C editor kilo.

Open-source alternative to:nano

Stars
1,957
Forks
116
Open issues
32
Last commit
11 days ago

What is it?

Kibi is a terminal text editor written in Rust with a deliberate constraint: the implementation stays within 1024 lines of code, counted per platform and excluding tests. It supports UTF-8 text, incremental search, syntax highlighting, line numbers and a status bar showing file size, and it keeps external dependencies minimal, relying mainly on libc on Unix and winapi on Windows.

The project started as a port of the C editor kilo to idiomatic Rust and adds features such as Windows compatibility, a go-to line and column command, window resize handling on UNIX, configurable tab width and message duration, and the ability to run an external command and paste its output into the buffer. Syntax highlighting is driven by INI files, with a bundled set of language definitions covering dozens of languages.

Kibi runs on Linux, macOS, Windows 10 and WASI, and is available through cargo, several Linux distribution repositories, Termux and Flathub.

Key features

  • 01Incremental search with arrow-key navigation.
  • 02UTF-8 text support and line numbers in the gutter.
  • 03Syntax highlighting configured with simple INI files.
  • 04Global configuration for tab size, quit confirmations and message duration.
  • 05Run an external command and paste its output into the buffer.
  • 06Runs on Linux, macOS, Windows 10 and WASI.

Use cases

  • Quick edits on remote servers or minimal systems where a full editor is unavailable.
  • Editing config files such as sudoers via visudo.
  • Learning how a small terminal editor is built in Rust.
  • Editing text on Android through Termux.

Quick start

  1. 1

    Install Kibi with cargo

    cargo install kibi
  2. 2

    Start a new text buffer

    kibi
  3. 3

    Open a file

    kibi <file path>

Things to know

  • Requires a terminal that supports ANSI escape sequences.
  • Configuration and syntax highlighting setup is manual via INI files.

In collections

Topics

FAQ

What is kibi?
A terminal text editor written in Rust in at most 1024 lines of code, inspired by the C editor kilo. Kibi is a terminal text editor written in Rust with a deliberate constraint: the implementation stays within 1024 lines of code, counted per platform and excluding tests. It supports UTF-8 text, incremental search, syntax highlighting, line numbers and a status bar showing file size, and it keeps external dependencies minimal, relying mainly on libc on Unix and winapi on Windows.
Is kibi free to use? What license does it have?
kibi is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is kibi still maintained?
Actively maintained. The last commit to kibi was on Oct 27, 2026.
What can I use kibi for?
Quick edits on remote servers or minimal systems where a full editor is unavailable. Editing config files such as sudoers via visudo. Learning how a small terminal editor is built in Rust. Editing text on Android through Termux.
How do I install kibi?
Install Kibi with cargo: cargo install kibi Start a new text buffer: kibi Open a file: kibi <file path>
Where can I get kibi?
The source code and installation instructions are on GitHub: https://github.com/ilai-deutel/kibi

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects