> For the complete documentation index, see [llms.txt](https://docs.discords.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.discords.com/iridium-engine/introduction.md).

# Introduction

Iridium Engine is a Node.JS based request handler designed for optimal performance of our applications.

<figure><img src="https://2522495415-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FDOTLRDzLdufJHI1i9tub%2Fuploads%2FvBSlhKzkFVA8IgfS1yIo%2Firidiumbanner.png?alt=media&amp;token=2ca5f5e9-1503-4c62-a67b-c5d5fabb72df" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
While available for the public eye to see, this documention will probably not be useful for the average user/developer as it only describes the functionality of the Iridium Engine system and does not provide information on public facing API routes.
{% endhint %}

{% hint style="warning" %}
This documentation **does not provide insight on security** as it is served on a need-to-know basis.
{% endhint %}

***

### Basic information

<table data-header-hidden><thead><tr><th width="317.3333333333333"></th><th></th></tr></thead><tbody><tr><td>Current release (name):</td><td>Ionite</td></tr><tr><td>Current release (version number):</td><td>1</td></tr><tr><td>Current release (revision number):</td><td>0</td></tr><tr><td>Current release (patch number):</td><td>8</td></tr><tr><td>Current release:</td><td>Iridium Ionite v1.0.8</td></tr><tr><td>Version in development since:</td><td> Apr 6, 2022</td></tr><tr><td>Release authors:</td><td>Jakub Lukeš</td></tr><tr><td>Node.JS runtime:</td><td>NodeJS v16.X.X or higher</td></tr><tr><td>Supported systems:</td><td>Linux, MacOS X, Windows (opt. WSL)</td></tr><tr><td>Optional stack:</td><td>MariaDB, Redis, RethinkDB, PostgreSQL, Angular</td></tr></tbody></table>

### Hardware requirements (minimum)

<table data-header-hidden><thead><tr><th width="316"></th><th></th></tr></thead><tbody><tr><td>CPU:</td><td>Broadcom BCM2711, Quad core Cortex-A72 (ARM v8) 64-bit SoC @ 1.8GHz</td></tr><tr><td>RAM:</td><td>128mb or greater (vacant)</td></tr><tr><td>GPU:</td><td>Not required</td></tr><tr><td>Connectivity:</td><td>Not measured</td></tr><tr><td>Multi-threading:</td><td>Optional</td></tr><tr><td>Disk space:</td><td>5GB</td></tr><tr><td>SSD:</td><td>Not required</td></tr></tbody></table>

***

## Routing system

Iridium creates routes based on their filesystem structure. All routes are gathered from the `routes` folder upon engine startup. As of version 1.0.8, mid-run refreshing is not possible.

{% hint style="info" %}
Engine startup time varies between devices. Startup will be faster if the engine has run recently. First-time startup usually take up to 90s, lightweight instances up to 10s. Re-runs vary from 1s to 5s.
{% endhint %}

<div><figure><img src="https://2522495415-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FDOTLRDzLdufJHI1i9tub%2Fuploads%2Fh225PJsva64g79h6M1gw%2Frouting.jpg?alt=media&amp;token=c09d31a0-6dfc-47e5-9496-10db83705586" alt=""><figcaption><p>Startupoutput, some data redacted</p></figcaption></figure> <figure><img src="https://2522495415-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FDOTLRDzLdufJHI1i9tub%2Fuploads%2F7Fbp20YapmpslKK0An1r%2Fstructure.jpg?alt=media&amp;token=35b1bee5-de4e-4c24-9faf-5fad727b471f" alt=""><figcaption><p>Routing structure example</p></figcaption></figure></div>
