This repository has been archived on 2023-08-08. You can view files and clone it, but cannot push or open issues or pull requests.
tomo-old/README.md

28 lines
1.4 KiB
Markdown
Raw Normal View History

2023-01-11 21:01:06 +00:00
# ![tomo](assets/banner.png)
2023-01-17 22:36:11 +00:00
Please note: Tomo is in early development. Some features may not work properly,
and its API may change without notice.
Tomo is a retro-looking GUI toolkit written in pure Go. It is designed with
these goals in mind:
2023-01-17 22:36:11 +00:00
- Modularity: the core of Tomo is mostly composed of interfaces—and the
2023-01-17 22:36:11 +00:00
overwhelming majority of its code resides in pluggable modules. If you don't
need it, then dont import it—and you can be assured it won't be there.
- Extendability: during the design of Tomo's API, use cases such as creating
custom backends, elements, and layouts were given just as much importance as
2023-01-17 22:36:11 +00:00
normal application building. Your custom element is a first-class citizen.
- Independence: Tomo is minimally dependent on code outside of the Go
2023-01-17 22:36:11 +00:00
standard library. Because of this, the file size of a compiled Tomo application
is typically very small.
- Frugality: Tomo foregoes things like animations and anti-aliasing in order to
2023-01-17 22:36:11 +00:00
use a minimal amount of system resources without even having to touch the GPU.
- Consistency: Tomo's design is not only consistent within itself, but also
with the Go standard library. If you've worked with Go in the past, Tomo will
feel pleasantly familliar.
2023-01-11 21:01:06 +00:00
You can find out more about how to use it by visiting the examples directory,
or pull up its documentation by running `godoc` within the repository. You can
also view it on the web on
[pkg.go.dev](https://pkg.go.dev/git.tebibyte.media/sashakoshka/tomo).