Update documentation

This commit is contained in:
JeremyStar™ 2024-10-15 13:51:02 +02:00
parent 2d558f8482
commit 281e7db708
Signed by: JeremyStarTM
GPG key ID: E366BAEF67E4704D
4 changed files with 68 additions and 19 deletions

View file

@ -6,7 +6,7 @@ title: Initializing the engine
# Initializing the engine # Initializing the engine
To initialize the sos!engine, simply add this to the initialization code of your application: To initialize the sos!engine, simply add this to the initialization code of your application:
```java ```java
new Engine(); Engine.initialize();
``` ```
This is enough to initialize the engine and all installed subsystems. No need to manually initialize them. This is enough to initialize the engine and all installed subsystems. No need to manually initialize them.

View file

@ -12,16 +12,16 @@ import TabItem from '@theme/TabItem';
## Gradle ## Gradle
Add StarOpenSource's maven repository to your `build.gradle` file first: Add StarOpenSource's maven repository to your `build.gradle` file first:
<Tabs groupId="maven-repository"> <Tabs groupId="gradle-dsl">
<TabItem value="gradle-groovy-dsl" label="Groovy DSL"> <TabItem value="gradle-groovy-dsl" label="Groovy DSL">
```groovy ```groovy
repositories { repositories {
mavenCentral() mavenCentral()
// sos!engine's maven repository // sos!engine maven repository
maven { maven {
name "staropensource-sosengine"
url "https://mvn.staropensource.de/sosengine" url "https://mvn.staropensource.de/sosengine"
name "staropensource-engine"
} }
} }
``` ```
@ -31,10 +31,10 @@ repositories {
repositories { repositories {
mavenCentral() mavenCentral()
// sos!engine's maven repository // sos!engine maven repository
maven { maven {
name = "staropensource-sosengine"
url = uri("https://mvn.staropensource.de/sosengine") url = uri("https://mvn.staropensource.de/sosengine")
name = "staropensource-engine"
} }
} }
``` ```
@ -42,7 +42,7 @@ repositories {
</Tabs> </Tabs>
After that declare the engine as a dependency to your project in the `build.gradle` file: After that declare the engine as a dependency to your project in the `build.gradle` file:
<Tabs groupId="maven-dependencies"> <Tabs groupId="gradle-dsl">
<TabItem value="gradle-groovy-dsl" label="Groovy DSL"> <TabItem value="gradle-groovy-dsl" label="Groovy DSL">
```groovy ```groovy
dependencies { dependencies {
@ -50,7 +50,12 @@ dependencies {
implementation 'de.staropensource.engine:base:' + project.dependencyStarOpenSourceEngine implementation 'de.staropensource.engine:base:' + project.dependencyStarOpenSourceEngine
// sos!engine subsystems // sos!engine subsystems
//implementation 'de.staropensource.engine:slf4j-compat:' + project.dependencyStarOpenSourceEngine // for SLF4J compatibility //implementation 'de.staropensource.engine:ansi:' + project.dependencyStarOpenSourceEngine // nice logging and ANSI support in your application
//compileOnly 'de.staropensource.engine:ansi:' + project.dependencyStarOpenSourceEngine // nice logging only
//compileOnly 'de.staropensource.engine:slf4j-compat:' + project.dependencyStarOpenSourceEngine // SLF4J compatibility
//implementation 'de.staropensource.engine:windowing:' + project.dependencyStarOpenSourceEngine // creating and managing windows, requires a Windowing API implementation
//compileOnly 'de.staropensource.engine:glfw:' + project.dependencyStarOpenSourceEngine // Windowing API implementation using GLFW
//implementation 'de.staropensource.engine:notification:' + project.dependencyStarOpenSourceEngine // sending and receiving notifications inside your application
} }
``` ```
</TabItem> </TabItem>
@ -61,7 +66,12 @@ dependencies {
implementation("de.staropensource.engine:base:" + project.dependencyStarOpenSourceEngine) implementation("de.staropensource.engine:base:" + project.dependencyStarOpenSourceEngine)
// sos!engine subsystems // sos!engine subsystems
//implementation("de.staropensource.engine:slf4j-compat:" + project.dependencyStarOpenSourceEngine) // for SLF4J compatibility //implementation ("de.staropensource.engine:ansi:" + project.dependencyStarOpenSourceEngine) // nice logging and ANSI support in your application
//compileOnly ("de.staropensource.engine:ansi:" + project.dependencyStarOpenSourceEngine) // nice logging only
//compileOnly ("de.staropensource.engine:slf4j-compat:" + project.dependencyStarOpenSourceEngine) // SLF4J compatibility
//implementation ("de.staropensource.engine:windowing:' + project.dependencyStarOpenSourceEngine) // creating and managing windows, requires a Windowing API implementation
//compileOnly ("de.staropensource.engine:glfw:' + project.dependencyStarOpenSourceEngine) // Windowing API implementation using GLFW
//implementation ("de.staropensource.engine:notification:' + project.dependencyStarOpenSourceEngine) // sending and receiving notifications inside your application
} }
``` ```
</TabItem> </TabItem>
@ -70,23 +80,23 @@ dependencies {
... and add this property to the `settings.gradle` file: ... and add this property to the `settings.gradle` file:
```properties ```properties
# Set this to the engine version you want to use # Set this to the engine version you want to use
dependencyStarOpenSourceEngine=1-alpha4 dependencyStarOpenSourceEngine=1-alpha6
``` ```
## Maven ## Maven
Add StarOpenSource's maven repository to your `pom.xml` file first: Add StarOpenSource's maven repository to your `pom.xml` file first:
```xml ```xml
<repositories> <repositories>
<!-- sos!engine's maven repository --> <!-- sos!engine maven repository -->
<repository> <repository>
<id>staropensource-sosengine</id> <id>staropensource-engine</id>
<name>StarOpenSource's sos!engine maven repository</name>
<url>https://mvn.staropensource.de/sosengine</url> <url>https://mvn.staropensource.de/sosengine</url>
<name>staropensource-engine</name>
</repository> </repository>
</repositories> </repositories>
``` ```
After that declare the engine as a dependency to your project: After that declare the engine as a dependency in your project:
```xml ```xml
@ -95,15 +105,43 @@ After that declare the engine as a dependency to your project:
<dependency> <dependency>
<groupId>de.staropensource.engine</groupId> <groupId>de.staropensource.engine</groupId>
<artifactId>base</artifactId> <artifactId>base</artifactId>
<version>1-alpha0</version> <version>1-alpha6</version>
</dependency> </dependency>
<!-- sos!engine subsystems --> <!-- sos!engine subsystems -->
<!-- For SLF4J Compatibility <!-- nice logging and ANSI support in your application
<dependency>
<groupId>de.staropensource.engine</groupId>
<artifactId>ansi</artifactId>
<version>v1-alpha6</version>
</dependency>
-->
<!-- SLF4J compatibility
<dependency> <dependency>
<groupId>de.staropensource.engine</groupId> <groupId>de.staropensource.engine</groupId>
<artifactId>slf4j-compat</artifactId> <artifactId>slf4j-compat</artifactId>
<version>1-alpha0</version> <version>1-alpha6</version>
</dependency>
-->
<!-- creating and managing windows, requires a Windowing API implementation
<dependency>
<groupId>de.staropensource.engine</groupId>
<artifactId>windowing</artifactId>
<version>v1-alpha6</version>
</dependency>
-->
<!-- Windowing API implementation using GLFW
<dependency>
<groupId>de.staropensource.engine</groupId>
<artifactId>glfw</artifactId>
<version>v1-alpha6</version>
</dependency>
-->
<!-- sending and receiving notifications inside your application
<dependency>
<groupId>de.staropensource.engine</groupId>
<artifactId>notification</artifactId>
<version>v1-alpha6</version>
</dependency> </dependency>
--> -->
</dependencies> </dependencies>

View file

@ -13,6 +13,7 @@ The engine API documentation covers the core engine and all official subsystems.
- [slf4j-compat](https://jd.engine.staropensource.de/develop/slf4j-compat/) - [slf4j-compat](https://jd.engine.staropensource.de/develop/slf4j-compat/)
- [windowing](https://jd.engine.staropensource.de/develop/windowing/) - [windowing](https://jd.engine.staropensource.de/develop/windowing/)
- [windowing:glfw](https://jd.engine.staropensource.de/develop/windowing:glfw/) - [windowing:glfw](https://jd.engine.staropensource.de/develop/windowing:glfw/)
- [notification](https://jd.engine.staropensource.de/develop/notification/)
- v1-alpha0 - v1-alpha0
- [All subsystems](https://jd.engine.staropensource.de/v1-alpha0/all/) - [All subsystems](https://jd.engine.staropensource.de/v1-alpha0/all/)
- [base](https://jd.engine.staropensource.de/v1-alpha0/base/) - [base](https://jd.engine.staropensource.de/v1-alpha0/base/)
@ -57,3 +58,12 @@ The engine API documentation covers the core engine and all official subsystems.
- [slf4j-compat](https://jd.engine.staropensource.de/v1-alpha5/slf4j-compat/) - [slf4j-compat](https://jd.engine.staropensource.de/v1-alpha5/slf4j-compat/)
- [windowing](https://jd.engine.staropensource.de/v1-alpha5/windowing/) - [windowing](https://jd.engine.staropensource.de/v1-alpha5/windowing/)
- [windowing:glfw](https://jd.engine.staropensource.de/v1-alpha5/windowing:glfw/) - [windowing:glfw](https://jd.engine.staropensource.de/v1-alpha5/windowing:glfw/)
- v1-alpha6
- [All subsystem](https://jd.engine.staropensource.de/v1-alpha6/all/)
- [base](https://jd.engine.staropensource.de/v1-alpha6/base/)
- [testing](https://jd.engine.staropensource.de/v1-alpha6/testing/)
- [ansi](https://jd.engine.staropensource.de/v1-alpha6/ansi/)
- [slf4j-compat](https://jd.engine.staropensource.de/v1-alpha6/slf4j-compat/)
- [windowing](https://jd.engine.staropensource.de/v1-alpha6/windowing/)
- [windowing:glfw](https://jd.engine.staropensource.de/v1-alpha6/windowing:glfw/)
- [notification](https://jd.engine.staropensource.de/v1-alpha6/notification/)

View file

@ -7,8 +7,8 @@ title: Welcome
Welcome to the documentation for the StarOpenSource Engine! Welcome to the documentation for the StarOpenSource Engine!
<!-- StarOpenSource Fly verification links --> <!-- StarOpenSource Fly verification links -->
<link href="https://fly.staropensource.de/@staropensource" rel="me"/> <link href="https://fly.staropensource.de/@staropensource" rel="me"/>
<link href="https://fly.staropensource.de/@soscore" rel="me"/>
<link href="https://fly.staropensource.de/@sosengine" rel="me"/> <link href="https://fly.staropensource.de/@sosengine" rel="me"/>
<link href="https://fly.staropensource.de/@soscore" rel="me"/>
<!-- StarOpenSource Fly verification links --> <!-- StarOpenSource Fly verification links -->
## What is it? ## What is it?
@ -30,13 +30,14 @@ Subsystems on the other hand usually handle complex tasks. They provide abstract
"But why are there so many of them?" you might ask. Good question! Subsystems are intended to [do one thing and do it well](https://en.wikipedia.org/wiki/Unix_philosophy). "But why are there so many of them?" you might ask. Good question! Subsystems are intended to [do one thing and do it well](https://en.wikipedia.org/wiki/Unix_philosophy).
## Available official subsystems ## Available official subsystems
Besides the `base` engine, there is one stable subsystem, two experimental subsystems and one stub subsystem. Besides the `base` engine, there are two stable subsystem and three experimental subsystems.
### Stable ### Stable
- [`ansi`](https://git.staropensource.de/StarOpenSource/Engine/src/branch/develop/ansi): Provides an ANSI logging implementation and a ShortcodeParserSkeleton implementation - [`ansi`](https://git.staropensource.de/StarOpenSource/Engine/src/branch/develop/ansi): Provides an ANSI logging implementation and a ShortcodeParserSkeleton implementation
- [`slf4j-compat`](https://git.staropensource.de/StarOpenSource/Engine/src/branch/develop/slf4j-compat): Provides [SLF4J](https://slf4j.org/) compatibility logger that redirects all log calls to the engine. - [`slf4j-compat`](https://git.staropensource.de/StarOpenSource/Engine/src/branch/develop/slf4j-compat): Provides [SLF4J](https://slf4j.org/) compatibility logger that redirects all log calls to the engine.
### Experimental ### Experimental
- [`windowing`](https://git.staropensource.de/StarOpenSource/Engine/src/branch/develop/windowing): Provides abstract APIs for creating and managing windows and monitors. - [`windowing`](https://git.staropensource.de/StarOpenSource/Engine/src/branch/develop/windowing): Provides abstract APIs for creating and managing windows and monitors.
- [`windowing-glfw`](https://git.staropensource.de/StarOpenSource/Engine/src/branch/develop/windowing/glfw): Windowing API, allowing GLFW to be used for creating windows and recieving input. - [`windowing-glfw`](https://git.staropensource.de/StarOpenSource/Engine/src/branch/develop/windowing/glfw): Windowing API, allowing GLFW to be used for creating windows and recieving input.
- [`notification`](https://git.staropensource.de/StarOpenSource/Engine/src/branch/develop/notification): Provides an API for sending and receiving notifications inside a program.
## API documentation ## API documentation
To read the engine API documentation, visit [jd.engine.staropensource.de](https://jd.engine.staropensource.de). To read the engine API documentation, visit [jd.engine.staropensource.de](https://jd.engine.staropensource.de).