c215989c10
Co-authored-by: amalraj.manigmail.com <amalraj.manigmail.com> Co-authored-by: Péter Szilágyi <peterke@gmail.com> Co-authored-by: Flash Sheridan <flash@pobox.com> Co-authored-by: Martin Holst Swende <martin@swende.se> Co-authored-by: Nguyen Kien Trung <trung.n.k@gmail.com> Co-authored-by: Felix Lange <fjl@twurst.com> Co-authored-by: Rob Mulholand <rmulholand@8thlight.com> Co-authored-by: Felföldi Zsolt <zsfelfoldi@gmail.com> Co-authored-by: soc1c <soc1c@users.noreply.github.com> Co-authored-by: Rafael Matias <rafael@skyle.net> Co-authored-by: gary rong <garyrong0905@gmail.com> Co-authored-by: Lucas Hendren <lhendre2@gmail.com> Co-authored-by: Ryan Schneider <ryanleeschneider@gmail.com> Co-authored-by: ywzqwwt <39263032+ywzqwwt@users.noreply.github.com> Co-authored-by: zcheng9 <zcheng9@hawk.iit.edu> Co-authored-by: zzy96 <zhou0250@e.ntu.edu.sg> Co-authored-by: kikilass <36239971+kikilass@users.noreply.github.com> Co-authored-by: Darrel Herbst <dherbst@gmail.com> Co-authored-by: Ross <9055337+Chadsr@users.noreply.github.com> Co-authored-by: Jeffery Robert Walsh <rlxrlps@gmail.com> Co-authored-by: Marius Kjærstad <sandakersmann@users.noreply.github.com> Co-authored-by: Piotr Dyraga <piotr.dyraga@keep.network> Co-authored-by: Guillaume Ballet <gballet@gmail.com> Co-authored-by: Michael Forney <mforney@mforney.org> Co-authored-by: Samuel Marks <807580+SamuelMarks@users.noreply.github.com> |
||
---|---|---|
.. | ||
AUTHORS | ||
LICENSE | ||
README.md | ||
api.go | ||
api_common.go | ||
api_windows.go | ||
collect_terminfo.py | ||
syscalls_darwin.go | ||
syscalls_darwin_amd64.go | ||
syscalls_dragonfly.go | ||
syscalls_freebsd.go | ||
syscalls_linux.go | ||
syscalls_netbsd.go | ||
syscalls_openbsd.go | ||
syscalls_windows.go | ||
termbox.go | ||
termbox_common.go | ||
termbox_windows.go | ||
terminfo.go | ||
terminfo_builtin.go |
README.md
Termbox
Termbox is a library that provides a minimalistic API which allows the programmer to write text-based user interfaces. The library is crossplatform and has both terminal-based implementations on *nix operating systems and a winapi console based implementation for windows operating systems. The basic idea is an abstraction of the greatest common subset of features available on all major terminals and other terminal-like APIs in a minimalistic fashion. Small API means it is easy to implement, test, maintain and learn it, that's what makes the termbox a distinct library in its area.
Installation
Install and update this go package with go get -u github.com/nsf/termbox-go
Examples
For examples of what can be done take a look at demos in the _demos directory. You can try them with go run: go run _demos/keyboard.go
There are also some interesting projects using termbox-go:
- godit is an emacsish lightweight text editor written using termbox.
- gomatrix connects to The Matrix and displays its data streams in your terminal.
- gotetris is an implementation of Tetris.
- sokoban-go is an implementation of sokoban game.
- hecate is a hex editor designed by Satan.
- httopd is top for httpd logs.
- mop is stock market tracker for hackers.
- termui is a terminal dashboard.
- termloop is a terminal game engine.
- xterm-color-chart is a XTerm 256 color chart.
- gocui is a minimalist Go library aimed at creating console user interfaces.
- dry is an interactive cli to manage Docker containers.
- pxl displays images in the terminal.
- snake-game is an implementation of the Snake game.
- gone is a CLI pomodoro® timer.
- Spoof.go controllable movement spoofing from the cli
- lf is a terminal file manager
- rat lets you compose shell commands to build terminal applications.