diff options
author | Edoardo La Greca | 2025-04-26 21:14:49 +0200 |
---|---|---|
committer | Edoardo La Greca | 2025-04-26 21:14:49 +0200 |
commit | fcee7d6c31b30101119f1d13ba2ea6cda1cfd3be (patch) | |
tree | b5ae0f76676e66100b532c363a2f742c6cd9d5c7 | |
parent | 916d2640cfda48e0793ab7b63a776fe1673cedc5 (diff) |
add readme
-rw-r--r-- | README | 43 |
1 files changed, 43 insertions, 0 deletions
@@ -0,0 +1,43 @@ +femtokit +-------- + +Femtokit is a graphical user interface toolkit. In other words, it provides an abstraction to the programmer in order to create graphical user interfaces without the need of manually manipulating the graphics primitives. + +The name "Femtokit" is a wordplay between *femto* (a really small order of magnitude in the SI prefixes, 10^-15 to be exact) and *"tokit"*, an abbreviation of "toolkit". + +Goals +===== + +The main goal of Femtokit is providing a **decent** (*comfortable*) **level of abstraction** over the raw graphics programming primitives, while also not sacrificing **freedom** (what the user can achieve), **compactness** and **minimal resource usage** (its size on disk and its hardware/software resources usage), or **dependence** on external software or hardware. + +Compilation and usage +===================== + +As I may have said somewhere else, you need **OpenGL** (development version, that with header files) and **freeGLUT** (development version for this one as well). + +Using the make file in the repository's root: + +- **`make`** builds all the translation units, skipping those which have been built already. +- **`make install`** moves all object files to the respective directories in the machine's file system. +- **`make uninstall`** removes all object files from the machine's file system. +- **`make clean`** removes all object files produced by `make` from the repository's directory. + +The ultimate object file is a library called `libfemtokit`, which is + +Repository structure +==================== + +The repository's root directory contains almost everything, including the source code, a header file with definitions for all symbols, and a make file. + +Sub-directories contain secondary files and directories like scripts, images, data files, et cetera. Specifically, the scripts are in `scr`, images in `img`, and data files in `data`. + +Aesthetics +========== + +Follow the aesthetics. + +License (or, "Can I steal your code?") +====================================== + +Unlicense, see LICENSE. (Yes.) + |