Skip to content

OceanApocalypseStudios/RedSeaMarkupLanguage

RSML Logo

Red Sea Markup Language




GitHub Actions Workflow Status GitHub Actions Workflow Status

An OceanApocalypseStudios project,

the modern language designed to dynamically interpret different logic paths based on an host's OS and CPU architecture.


Contents

Where's the "How to use" section?

You can find full documentation here.

How can I see what is being worked on in RSML?

You can find the official bug tracker and roadmap here.


Why RSML?

RSML solves the issue of resolving logic paths dynamically based on a given host's characteristics. When assigned an host, which could be the local host, RSML solves the logic paths and returns the first match's associated value. The important part here is to note RSML does this dynamically: if you were to switch hosts or pass different data, RSML would adapt accordingly.

Still unsure about RSML? You can find some usage examples here.


How to build RSML?

Debug build
  1. Install the .NET SDK 10.0.
  2. Clone this repository.
  3. Open the terminal in the root RSML directory (the one with the solution file).
dotnet build -c Debug RedSeaMarkupLanguage.slnx
./src/RSML.CLI/bin/Debug/net10.0/RSML.CLI.exe
Optimized build
  1. Install the .NET SDK 10.0.
  2. Clone this repository.
  3. Open the terminal in the root RSML directory (the one with the solution file).
dotnet build -c Release RedSeaMarkupLanguage.slnx
./src/RSML.CLI/bin/Release/net10.0/RSML.CLI.exe
CLI Framework-dependent Build (good if you want a lighter CLI that uses your installed .NET SDK)
  1. Install the .NET SDK 10.0.
  2. Clone this repository.
  3. Open the terminal in the root RSML directory (the one with the solution file).
dotnet publish -c Release -r <rid> src/RSML.CLI/RSML.CLI.csproj --no-self-contained true
Native build (compiles into a shared library)
  1. Install the .NET SDK 10.0.
  2. Clone this repository.
  3. Open the terminal in the root RSML directory (the one with the solution file).
dotnet publish -c Release -r <rid> src/RSML.Native/RSML.Native.csproj

Once that is complete, the DLL will be located at src/RSML.Native/bin/<arch>/Release/net10.0/<rid>/publish/RSML.Native.dll. The XML files in the same directory are purely for documentation purposes and the .pdb file only matters for debugging.


RSML on NuGet Trends

Note

In the image below, RSML refers to Legacy RSML (RSML v1.x.x), while OceanApocalypseStudios.RSML refers to Modern RSML (RSML v2.0.0). In any other context, RSML and OceanApocalypseStudios.RSML have the exact same meaning.

RSML on NuGet Trends


See Also


Copyright (c) 2025 OceanApocalypseStudios

We ❀️ open-source!

About

πŸ’ͺ The modern, more robust fork of MF's CrossRoad for C#.

Topics

Resources

License

MIT and 2 other licenses found

Licenses found

MIT
LICENSE.txt
Unknown
COPYING.txt
CC0-1.0
LICENSE-DOCS.txt

Code of conduct

Contributing

Security policy

Stars

4 stars

Watchers

1 watching

Forks

Packages

 
 
 

Contributors

Languages