Haven
=====

// This is a wiki of sorts, although, since no one else can edit it,
// it's just a personal wiki, or maybe just a collection of articles.
// Might name it like "writings" or even simply "db".

As computer power user, I often get unhappy, especially as a result of
the changes that have happened over the last decade:

 - almost every application I use looks and feels different,
 - senseless animations vie for my attention and add delays,
 - many applications are hard to control from the keyboard,
 - visual clutter distracts me from tasks at hand,
 - lack of customizability sets all those problems in stone,
 - and unbelievable hardware requirements, stemming from accidental complexity
and a general lack of care, push me to buy unnecessarily expensive equipment
just so that I don't feel like being _used by the computer_.

*haven* is an umbrella project for a range of mostly desktop
applications.  The greater goal is to create a fresh computing environment for
daily work and play--easily controllable, reasonably complex, both visually
and internally unified and last but not least responsive.

I'm not trying to create anything novel but to achieve something
*elegant* and *pleasing*.

.Related articles:
 - https://lobste.rs/s/ksbcw5/12_principles_for_diverging_desktop +
   While I don't fully agree with the vision, we have similar concerns.

Further reading
---------------
To get a better sense of the direction this project is going in, you can take
a look at a list of GoodThings and BadThings.  If you're of the shallower kind,
have a look at Identity, and if you're interested in the overall design,
consult Technicalities.

Status
------
Trying to gain momentum, there's an astounding amount of work to be done.  Hop
on if you know Go well, my contact is on the link:/[front page].  Top priority
tasks:

 - [x] start writing a detailed wiki for propagation purposes
 - [ ] create a basic terminal emulator for `TERM=dumb` (exercise)
 - [ ] create a basic CSV viewer (simple, useful)
 - [ ] create an IRC client (lots of know-how, trivial UI)
 - [ ] create a basic vi-inspired text editor (required component for later)
 - [ ] create a personal wiki/organiser (urgent)

Mockups
-------
// TODO: Mockups can be just included from different places.

// SVG is too precise, must use HTML/CSS.

.ht -- terminal emulator
+++
<div style="border: 1px solid black; padding: 2px; background: white;">
<pre style="margin: 0; padding: 0;">
This is just supposed to be a simple terminal emulator application.
It ought to be a rather simple exercise.
</pre>
</div>
+++

While I despise the Unix terminal, I can't just stop using Unix tools, and so
I'll need a means to interact with them.  One day it might evolve into
a graphical terminal with a tty compatibility layer, which would need
integrating a custom POSIX shell such as https://github.com/mvdan/sh[].
