ubunatic.com

Linux emoji picker

emojig

A Linux emoji picker for your terminal or desktop. One Zig binary opens an inline terminal picker or a floating window, with no background service. Try its interactive shell-widget simulator below.

curl -fsSL https://ubunatic.com/emojig/install.sh | sh

Key facts

12-week commit activity

2026-10-26
View 12-week data table
Week startingCommits
2026-08-0320
2026-08-1019
2026-08-170
2026-08-241
2026-08-317
2026-09-071
2026-09-1416
2026-09-210
2026-09-280
2026-10-054
2026-10-120
2026-10-195

Key Features

  • One binary includes 2,249 emojis and opens inline or in a desktop popup.
  • Search spans multiple words and handles plurals, such as finding “car” for “cars”.
  • Mouse and keyboard controls, light and dark themes, and clipboard copy.
  • Crash handlers restore terminal settings if the picker exits unexpectedly.
  • A browser demo uses the same search rules and is checked against the native picker.

Verified Engineering Milestones

  • Website search matches the terminal's box-drawing emoji rules (#071, 96e62ec, 658cb7e)
  • ARM64 release build fix and v0.2.1 release (#070, 0dad63d, fb619ef)
  • Flicker-free terminal frames (d24100f)

Stack

Zig 0.16 runtime, Go 1.25 tooling and tests, YAML specs, JavaScript simulator, Wayland/X11, terminal emulators

An emoji picker that stays close to your workflow

Desktop emoji pickers usually belong to a particular desktop, while browser based pickers pull you out of the terminal. Emojig is a small Linux app that works inline in your shell or as a floating desktop window, using the same embedded emoji data and search behavior in both modes.

Try the interactive simulator

Search the emoji set and navigate the simulated shell picker. Type a command and press Ctrl+E to open it; use arrows and Enter to select, or try ? and ?? for the help screens. Open demo in a new tab ↗

Designed for terminal and desktop use

Terminal and desktop picker

emojig · dark terminal
Open the inline picker, search for an emoji, and insert it into a shell command.
emojig · light terminal
The same terminal workflow using a light theme.
Open the floating picker from a desktop application and paste an emoji.

Search in the terminal

Get started

Install the latest Linux release with the project installer:

curl -fsSL https://ubunatic.com/emojig/install.sh | sh

The installer selects the supported Linux architecture, downloads the current Codeberg release, and installs emojig and its shell completions under your home directory.

Project details

Stack
Zig 0.16 runtime, Go 1.25 tooling and tests, YAML specs, JavaScript simulator, Wayland/X11, terminal emulators
Milestones
Website search matches the terminal's box-drawing emoji rules (#071, 96e62ec, 658cb7e) · ARM64 release build fix and v0.2.1 release (#070, 0dad63d, fb619ef) · Flicker-free terminal frames (d24100f)

Layer composition

Terminal
TUI, synchronized output, raw mode
Desktop
Linux, Wayland/X11, clipboard
Inference / AI
—
Containers / VM
—
Web
JavaScript simulator

emojig: the story behind the project

An emoji picker sounds like a small interface problem: show a grid, let someone search, copy a character. On Linux, the details quickly multiply. The same picker should fit into an existing terminal session or appear as a desktop popup; ren…

Read the engineering story