Modular, extensible, fast. https://engine.staropensource.de
Find a file
2024-07-26 13:23:41 +02:00
.idea Sort and add new tasks 2024-07-11 04:15:37 +02:00
base Add some 'final's 2024-07-26 13:20:56 +02:00
dist Add dist/ directory 2024-06-16 13:34:56 +02:00
docs Add update-deps task to docs/Makefile 2024-07-24 02:02:55 +02:00
gradle/wrapper Initial commit 2024-06-08 15:33:03 +02:00
graphics Move Api*Class to separate 'classes.api' package 2024-07-26 13:23:41 +02:00
slf4j-compat Fix jansi build dependency for all projects 2024-07-18 14:14:21 +02:00
src/main/javadoc Update Javadoc theme 2024-07-11 05:00:09 +02:00
testapp Move Api*Class to separate 'classes.api' package 2024-07-26 13:23:41 +02:00
.gitignore Add 'run/' entry to gitignore 2024-07-16 14:53:17 +02:00
build.gradle Move some exceptions 2024-07-16 14:48:41 +02:00
COPYING Add classpath exception 2024-07-11 23:29:23 +02:00
gradle.properties Remove jOOR dependency, migrate tests 2024-07-15 13:13:55 +02:00
gradlew Initial commit 2024-06-08 15:33:03 +02:00
gradlew.bat Initial commit 2024-06-08 15:33:03 +02:00
LICENSE Add classpath exception 2024-07-11 23:29:23 +02:00
README.md Update TODO 2024-07-11 23:29:35 +02:00
settings.gradle Move common GLFW code to new 'glfw' subsystem 2024-07-21 23:19:02 +02:00

StarOpenSource Engine

The StarOpenSource Engine (or sos!engine for short) is a modular, extensible and easy to use Java game and application engine.

Index

About

About the engine

The sos!engine is a modular and extensible framework for building applications and games, written in the Java programming language. The engine consists of various subsystems, each separate and responsible for only one thing. The engine also houses various useful utilities and classes making development fun, and all that while being lightweight.

About the repository

The sos!engine repository is a monorepo, consisting of the core engine, official subsystems and their documentation.

Priorities

  • modular
  • small & lightweight
  • fast
  • do one thing and do it well (subsystems concept)
  • have as few runtime dependencies as possible (note: we will cut down on some of them during development)

Documentation

The official documentation for the StarOpenSource Engine is not yet available, but is planned. You can however visit the Javadocs.

Contributing

Requirements

You need the following things to be able to contribute code to the StarOpenSource Engine:

  • knowledge of Java
  • knowledge about the internals of engine

What IDE to use?

We use and recommend using IntelliJ IDEA Community Edition for development because it is flexible, extendable, customizable, provides good completions and error detection. It's also open source.

Code style

We recommend looking at existing classes.

Read this before creating a pull request

Before creating a pull request, make sure you've

  • created tests for the functionality you added, changed or removed (if applicable),
  • tested your changes,
  • made sure that everything works,
  • is compatible with other code in the monorepo, and
  • is compatible with other applications. If not, tell us in your pull request description.

Making your first contribution

TODO