summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdoardo La Greca2025-04-26 21:14:49 +0200
committerEdoardo La Greca2025-04-26 21:14:49 +0200
commitfcee7d6c31b30101119f1d13ba2ea6cda1cfd3be (patch)
treeb5ae0f76676e66100b532c363a2f742c6cd9d5c7
parent916d2640cfda48e0793ab7b63a776fe1673cedc5 (diff)
add readme
-rw-r--r--README43
1 files changed, 43 insertions, 0 deletions
diff --git a/README b/README
new file mode 100644
index 0000000..20c4ea9
--- /dev/null
+++ b/README
@@ -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.)
+