The 🔥 Blazingly-Fast 🔥 Web Server for LuaJIT

Built with Rust and Axum, Astra delivers unmatched performance, fault-tolerance and ease-of-use for your Lua servers

Blazing Fast

Engineered for speed with Rust's zero-cost abstractions and Axum's async runtime

LuaJIT Integration

Seamless integration with LuaJIT for high-performance scripting

Modular Design

Extensible architecture that grows with your application with fault-tolerance

Ease of Use

A single binary, packed with all the batteries included

-- You can also use the local variables within routes
local counter = 0
Astra.get("/count", function(request, response)
    -- consume the request body
    print(request:body():text())

    -- set header code (Optional)
    response:set_status_code(300)
    -- set headers (Optional)
    response:set_header("header-key", "header-value")

    counter = counter + 1
    -- and also can return JSON
    return { counter_value = counter }
end)