Kevux Systems and Software - Documentation
Author: Kevin Day
Description: Documentation of numerous Kevux Systems programs and software.
Keywords: Featureless, FLL, Kevin Day, Kevux, Linux, Library, Make, Fake, Controller, UTF-8, Open-Source, Documentation

# Documentation

The documentaton for the various programs may be found within their individual projects.

## Specifications

Projects like the Featureless Linux Library are focused entirely around provided standards for every aspect of the project. Numerous specifications are available describing these standards. The most up to date specifications might not been transcribed into a format for the web. The most recent versions are stored in plain text within the source code repositories.

There are three major groups of specifications, the Featureless Settings Specifications, the EKI Specifications, and the IKI Specifications. Individual projects might also have their own specifications. Each program has a specifications page that describes the relevant specifications, if any, that are defined by that program's project. The Featureless Make is a good example of program specific specifications.

Many of these specifications might also be found in the source code repositories:

- https://sourceforge.net/p/fll/git/ci/development/tree/specifications/
- https://sourceforge.net/p/fll/git/ci/development/tree/level_3/control/specifications/
- https://sourceforge.net/p/fll/git/ci/development/tree/level_3/controller/specifications/
- https://sourceforge.net/p/fll/git/ci/development/tree/level_3/fake/specifications/
- https://sourceforge.net/p/fll/git/ci/development/tree/level_3/utf8/specifications/

## APIs

The APIs have not yet been generated and are not available in an easy to consume form outside of the source code itself.

The API can be viewed by navigating the source code for the FLL here:

- https://sourceforge.net/p/fll/git/ci/development/tree/

## Terminology

One of the biggest problems with an API is the misuse or misunderstanding of the meaning and purpose of one. The term itself is not the most accurate and is also not ideal. A more appropriate term would be a Library Interface or a Software Interface.

### Standard

A set of rules and guidelines.

### Specification

A specific interpretation, clarification, or description of a Standard, such as the documentation that describes how to use or follow a Standard.

### Implementation

The applying of some Standard or Specification.

### Application Programming Interface (API)

The API term is commonly mis-represented as Services or Protocols (such as "Web API"). An API instructs a programmer how to use a dependency when programming some software that utilizes said dependency. An API is a Specification of some Implementation of a Standard be it a formally defined standard or an informally defined standard. An API may be an Implementation of a Standard or a part of an Implementation of a Standard. An API is, in effect, documentation.

### Application Binary Interface (ABI)

The ABI term refers to an Application Binary Interface and represents the compiled implementation of some API. An ABI may not always exist for some API, such as for pure scripting languages. An ABI is neither a Specification nor a Standard. An ABI is an Implementation of an API making it an Implementation of a Standard or Specification.

### Service

Any action or labor performed by one party for another party (such as one person helping another person).

### Protocol

In the context of computers and software, this is a Standard focused on communication between two parties (often referring to Internet communication).