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
To initialize the sos!engine, simply add this to the initialization code of your application:
```java
new Engine();
Engine.initialize();
```
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
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">
```groovy
repositories {
mavenCentral()
// sos!engine's maven repository
// sos!engine maven repository
maven {
name "staropensource-sosengine"
url "https://mvn.staropensource.de/sosengine"
name "staropensource-engine"
}
}
```
@ -31,10 +31,10 @@ repositories {
repositories {
mavenCentral()
// sos!engine's maven repository
// sos!engine maven repository
maven {
name = "staropensource-sosengine"
url = uri("https://mvn.staropensource.de/sosengine")
name = "staropensource-engine"
}
}
```
@ -42,7 +42,7 @@ repositories {
</Tabs>
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">
```groovy
dependencies {
@ -50,7 +50,12 @@ dependencies {
implementation 'de.staropensource.engine:base:' + project.dependencyStarOpenSourceEngine
// 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>
@ -61,7 +66,12 @@ dependencies {
implementation("de.staropensource.engine:base:" + project.dependencyStarOpenSourceEngine)
// 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>
@ -70,23 +80,23 @@ dependencies {
... and add this property to the `settings.gradle` file:
```properties
# Set this to the engine version you want to use
dependencyStarOpenSourceEngine=1-alpha4
dependencyStarOpenSourceEngine=1-alpha6
```
## Maven
Add StarOpenSource's maven repository to your `pom.xml` file first:
```xml
<repositories>
<!-- sos!engine's maven repository -->
<!-- sos!engine maven repository -->
<repository>
<id>staropensource-sosengine</id>
<name>StarOpenSource's sos!engine maven repository</name>
<id>staropensource-engine</id>
<url>https://mvn.staropensource.de/sosengine</url>
<name>staropensource-engine</name>
</repository>
</repositories>
```
After that declare the engine as a dependency to your project:
After that declare the engine as a dependency in your project:
```xml
@ -95,15 +105,43 @@ After that declare the engine as a dependency to your project:
<dependency>
<groupId>de.staropensource.engine</groupId>
<artifactId>base</artifactId>
<version>1-alpha0</version>
<version>1-alpha6</version>
</dependency>
<!-- 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>
<groupId>de.staropensource.engine</groupId>
<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>
-->
</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/)
- [windowing](https://jd.engine.staropensource.de/develop/windowing/)
- [windowing:glfw](https://jd.engine.staropensource.de/develop/windowing:glfw/)
- [notification](https://jd.engine.staropensource.de/develop/notification/)
- v1-alpha0
- [All subsystems](https://jd.engine.staropensource.de/v1-alpha0/all/)
- [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/)
- [windowing](https://jd.engine.staropensource.de/v1-alpha5/windowing/)
- [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!
<!-- StarOpenSource Fly verification links -->
<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/@soscore" rel="me"/>
<!-- StarOpenSource Fly verification links -->
## 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).
## 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
- [`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.
### Experimental
- [`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.
- [`notification`](https://git.staropensource.de/StarOpenSource/Engine/src/branch/develop/notification): Provides an API for sending and receiving notifications inside a program.
## API documentation
To read the engine API documentation, visit [jd.engine.staropensource.de](https://jd.engine.staropensource.de).