Strange Loop

Xiki: GUI and Text Interfaces are Converging

A live demo of the new version of Xiki. Xiki is part of an emerging trend: the convergence of text and GUI. Xiki is like a shell console but better. It lets you execute shell commands and code snippets to controls your web browser, databases, APIs and other tools using text alone, right from a text editor. It uses an extremely simple wiki-inspired text syntax that unifies menu interfaces, files, and code.

In Xiki, you type out new menu interfaces as text, and immediately begin using what you typed (the text itself) as GUI menus. You then create inline code snippets, or any combination of dirs, classes, scripts (in various languages), templates, and data files to provide dynamic behavior.

Xiki can be used as an IDE, a rapid prototyping tool, an interface design tool, or an embedded library (a ruby gem) in other apps.

See demos of the simplified text syntax being used to quickly create elemental but useful menus, then scaling to create sophisticated interfaces for tools including git, mysql, mongodb, rails, node.js, rspec, jquery, threejs, and many others.

You can interact with Xiki menus you obtain or create via a text editor, a mobile-ish web interface, via shell commands, or as a web service.

Craig Muth

Craig Muth

Craig Muth has been evolving Xiki for over 10 years. He is the founder of, and the founder/organizer of the pair programming hack events in San Francisco.