XXIIVV
The Pillars
The Pillars

Oscean is a flat-file wiki engine.

Oscean is a static wiki engine written entirely in assembly, designed to be deployed from low-power devices with no extra dependencies. The engine has grown into a collection of tools which also includes a time tracker.

The wiki and related tools are designed to be used offline first, so the content is generally accessed and edited locally, there are no offsite queries for critical resources.

The generated files are optimized for screen-readers and terminal browsers, using no javascript, the stylesheet for this entire website is 30 lines long. The entire project was designed with a focus on resilience and longtermism.

—Iris, in Dotgrid

To learn more about the templating engine, see meta.

Indental is a plaintext dictionary-type database format designed to store elements accessible by name.

In the Indental file, an unindented line declares the key to a new root node, children lines can associate either parameters or lists to their parent node, a line divided with a colon will associate a value to a parameter to the parent node, and a sequence of equally indented lines will append to a list.

NAME
	KEY : VALUE
	LIST
		ITEM1
		ITEM2

Or, {NAME:{KEY:VALUE,LIST:[ITEM1,ITEM2])}

Tablatal is a plaintext list-type database format designed to store a list of elements of the same length, accessible by id.

In the Tablatal file, the first line declares the key, the spacing between each key defines the length of the parameters for all subsequent lines. The format was originally designed to store the Horaire logs.

NAME    AGE   COLOR
Erica   12    Opal
Alex    23    Cyan
Nike    34    Red
Ruca    45    Grey

Or, [{name:Erica,Age:12,Color:Blue},{name:Alex,Age..}

Lain is a LISP dialect used as a templating and scripting engine.

The Lain is a simple LISP language that used to exist at the core of Oscean before the migration to a fully static website, but it can still be found in various projects of the Nataniev, such as in the Ronin and Paradise applications.

Templating With Lain

(link "home")                             {(link "home")}
(link "home" "local")                     {(link "home" "local")}
(link "https://github.com/")              {(link "https://github.com/")}
(link "https://github.com/" "external")   {(link "https://github.com/" "external")}
(bold "bold")                             {(bold "bold")}
(ital "italic")                           {(ital "italic")}
(bold (link "home" "bold link"))          {(bold (link "home" "bold link"))}

Programming With Lain

(add (sub 5 3) 2)                         ; Basic Math
(λ (a b c) (concat a b c))                ; Lambda
(def obj:foo "bar")                       ; Creating object
(obj:foo)                                 ; Reading object parameters
(def _sidebar (dom:create "sidebar"))     ; Creating DOM elements

Runic is a templating format.

Runic is a first-order templating language operating on an array of lines, Where line is prefixed by a rune, giving a sense of the data being handled.

  * Header
  & Paragraph
  - List Element 1
  - List Element 2
  | table | row1
  | table | row2
  # -- CODE BLOCK
  > -- HTML BLOCK
  λ -- (link "LAIN") BLOCK