Project Relations
This Mermaid overview graph shows
the simplified relations between the projects.
An arrow from project A to project B means,
that either A provides something to B or that A interacts with B.
Keep in mind, that project A providing project B with things,
does not necessarily mean,
that A is a dependency of B.
For instance, repos.process manages git repos,
but the git repos themselves do not require repos.process.
The general idea behind this overview is, that the more downward the viewer looks, the more and more the projects represent end products, instead of foundational modules.
graph TD
    Developer --> Network-Project[Network Project]
    Shell --> repos.process
    Shell --> Shell-Libs[Shell Libs]
    Shell --> Network-Worker
    Network-Project --> Shell
    Dem --> Network-Worker[Network Worker]
    Community-Project --> Network-Distro
    Network-Distro --> splitcells.net
    Network-Project --> POMs 
    POMs --> Dem
    Gel --> Sep
    Gel --> Gel-Editor[Gel Editor]
    Gel-Editor --> Gel-UI[Gel UI]
    Network-Worker --> Webserver
    Sep --> Cin
    Webserver --> splitcells.net
    Webserver --> Gel
    Webserver --> Community-Project[Community Project]
    Cin --> Network-Distro[Network Distro]
    Gel-UI --> Network-Distro
    splitcells.net[splitcells.net Deployment] --> user[End User]
    
Project And Repo Cluster Structure
This project is meant to be part of a cluster, with a certain filesystem structure in mind. The cluster's filesystem consists of a folder containing repositories with minimal repo nesting:
Project Cluster
├── net.splitcells.network
│   └── projects
│       ├── net.splitcells.dem
│       ├── net.splitcells.gel
│       ├── net.splitcells.shell
│       ├── net.splitcells.system
│       └── ...
├── net.splitcells.network.log
├── net.splitcells.os.state.interface.lib.gpl.v2
├── net.splitcells.os.state.interface.lib.gpl.v2
└── ...
This image illustrates the networks structure by showing relevant parts of the filesystem.
- net.splitcells.network:
This repository integrates all projects, repositories and hosting services, that are part of the primary network.
- dem: Provides a standardized fundament for Java projects.
 - gel: This framework delivers optimization capabilities.
 - os.state.interface: The projects helps the user to organize and execute commands in the terminal via dependency injection.
 - system: Manages all integrated subprojects of the network. In particular, it can be used to use all integrated projects as a dependency.
 
 
Related projects are located in repositories, which are at the same folder as the net.splitcells.network project and are sometimes called peer projects/repos (see net.splitcells.osi.repos.peers files). These projects are not inside this repository and are managed more independently. They may be managed by users with OS state interface. It is recommended to not nest repositories. Examples are:
- net.splitcells.network.log contains data like benchmark results.
 - net.splitcells.shell.lib.gpl.v2 is a command repository,
that can be used independently or can be registered to an installation
of 
net.splitcells.shell. 
- SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
 - SPDX-FileCopyrightText: Contributors To The 
net.splitcells.*Projects