Sirius

The library everyone chose.

Stable channel

loadstring(game:HttpGet("https://sirius.menu/gen2"))()

Four years at the top.

The default for millions.

Let's see why

local home = window:CreateTab({ name = "Home" })

home:CreateToggle({
    name = "Auto Sprint",
    flag = "AutoSprint",
})

home:CreateSlider({
    name = "Field of View",
    range = { 70, 120 },
    flag = "FieldOfView",
})

-- Read or write either one from anywhere, by flag.
print(window:Get("AutoSprint"))
window:Set("FieldOfView", 90)

State that survives the session.

Give an element a flag and it persists. Values come back as the type they went in as, and a window can keep several named configurations at once.

Rayfield:CreateWindow({
    name = "Example",
    translations = {
        fr = {
            ["Auto Sprint"] = "Sprint auto",
            ["Field of View"] = "Champ de vision",
        },
        es = {
            ["Auto Sprint"] = "Sprint automático",
            ["Field of View"] = "Campo de visión",
        },
        ja = {
            ["Auto Sprint"] = "オートスプリント",
        },
    },
})

Translations, without a translation layer.

Keys are the English strings as they already read in your menu. Pass a partial table and anything you leave out stays in English. It picks up the player's Roblox locale on its own.

Motion

Nothing snaps.

Fields tween their width rather than resizing into place, which is the harder way to build them and the reason nothing jumps. Swap a theme with the window open and every colour crosses over. On hardware that has haptics, a press ticks and a notification lands harder.

Theme reference

Elements

Everything a menu needs.

Each one saves itself, reorders at runtime, and returns a handle you can set from anywhere.

  • Button Runs a callback. Takes an icon.
  • Toggle On or off, saved by flag.
  • Slider A range with an increment and a suffix.
  • Dropdown Choose one option, or several.
  • Input A text field that commits when you are done.
  • Keybind Press to set. Hold mode fires on press and release.
  • Color picker Hue, saturation and alpha. Accepts hex.
  • Stat A read-only number that rolls when it changes.
  • Text A label or a paragraph.
  • Divider A rule across the page, with a word in it or not.
Element reference

Security

Nothing to fingerprint.

Drawn in code

Gen1 loaded a marketplace model. Gen2 builds every frame itself, so there is no asset to look up and no id to match against.

Icons from disk

Built-in icons download once and are served through getcustomasset, which makes the content ids local to that machine.

Quiet by default

Secure mode makes no print or warn calls at all, because console output is a signature too.

Secure mode

Migrating

Already on Rayfield (2022)?

It still works, it still has its nine themes and its key system, and it has run something in the region of 400 million times as of January 2026. New scripts should start on Gen2.

Rayfield (2022)

loadstring(game:HttpGet('https://sirius.menu/rayfield'))()