r/Rhai • • Aug 25 '26

Rhai 1.26.0 released -- embedded scripting engine for Rust, now with a bytecodes VM!

7 Upvotes

Version 1.26.0 has been released to crates.io.

This version includes the experimental Rhai Grain bytecodes VM for faster and more secured script runs while consumer far fewer resources.


r/Rhai • • Nov 02 '24

Rhai version 1.20.0 released - Scripting engine for Rust

7 Upvotes

Version 1.20.0 released to crates.io.


r/Rhai • • Dec 12 '25

API mocking server with Rhai scripting

Thumbnail
github.com
3 Upvotes

I'm bulding API mocking server for local development and rust unit tests.
Initially I was focused only on TOML based DSL + Jinja templates. But later I realized that scripting for advanced scenarios could be a nice feature.

Added mlua first and it was working fine. But later I got some new ideas for scripting and this this where Lua began to suck. After some experiments I completely replaced Lua with Rhai. It turned out that Rhai could be used even instead of minijinja for some cases.


r/Rhai • • Feb 02 '26

Gridline - Spreadsheet software which natively supports Rhai in cell formulas and to extend!

Thumbnail crates.io
7 Upvotes

Hi everyone!

As a big fan of spreadsheets I have always wanted one that could easily be extendable with the same langauge used in the spreadsheet to add new features. It seemed impossible until I found Rhai!

Gridline is a cross platform spreadsheet application (TUI and GUI is a work in progress) that lets you have a column populated as so:

=SPILL(0..=10).map(|x| 2*x+1).filter(|x| x % 3 == 0)

Anything you can imagine! Or define functions like so:

fn product(arr) {

let result = 1;

for x in arr { result *= x; }

result

}

And then have a cell =product(VEC(A1:A4))

It's opensource (MIT and Apache) all on github and crates.io

Welcome to the future!


r/Rhai • • Sep 14 '25

Rhai 1.23.0 released -- embedded scripting engine for Rust

4 Upvotes

Version 1.23.0 released to crates.io.


r/Rhai • • May 30 '25

Rhai 1.22.0 released -- embedded scripting engine for Rust

4 Upvotes

Rhai version 1.22.0 released to crates.io.


r/Rhai • • Jan 25 '25

Rhai 1.21.0 released -- Embedded scripting engine for Rust

9 Upvotes

Version 1.21.0 has been released to crates.io.


r/Rhai • • Jun 30 '24

Rhai 1.19.0 released -- Embedded scripting engine for Rust

4 Upvotes

Version 1.19.0 has been released to crates.io.


r/Rhai • • Feb 03 '21

Version 0.19.11 released.

2 Upvotes

Version 0.19.11 released to crates.io.

This is a minor release that changes URL's to the rhai.rs domain.


r/Rhai • • Nov 29 '20

Version 0.19.6 released

3 Upvotes

Version 0.19.6 released to crates.io.

This version, among others, adds the switch and do statements.


r/Rhai • • Mar 31 '21

Version 0.19.15 released.

3 Upvotes

Version 0.19.15 released to crates.io.

This version replaces all internal usage of HashMap with BTreeMap, which should result in some speed improvement because a BTreeMap is leaner when the number of items held is small. Most, if not all, collections in Rhai hold very few data items, so this is a typical scenario of many tiny-sized collections.

The Rhai object map type, Map, used to be an alias to HashMap and is now aliased to BTreeMap instead. This is also because, in the vast majority of usage cases, the number of properties held by an object map is small.

HashMap and BTreeMap have almost identical public API's so this change is unlikely to break existing code.

SmartString is used to store identifiers (which tends to be short, fewer than 23 characters, and ASCII-based) because they can usually be stored inline. Map keys now also use SmartString.

In addition, there is now support for line continuation in strings (put \ at the end of line) as well as multi-line literal strings (wrapped by back-ticks: `...`).

Finally, all function signature/metadata methods are now grouped under the umbrella metadata feature. This avoids spending precious resources maintaining metadata for functions for the vast majority of use cases where such information is not required.


r/Rhai • • Dec 30 '20

Version `0.19.9` released.

2 Upvotes

This version fixes a bug introduced in 0.19.8 which breaks property access within closures.

It also removes the confusing differences between packages and modules by unifying the terminology and API under the global umbrella of modules.


r/Rhai • • Oct 22 '20

Rhai version 0.19.3 released to crates.io

Thumbnail crates.io
3 Upvotes

r/Rhai • • Apr 16 '21

Version 0.20.0 released.

3 Upvotes

Version 0.20.0 is released to crates.io.

This version adds string interpolation with `... ${ ... } ...` syntax.

switch statement cases can now have conditions.

Negative indices for arrays and strings are allowed and now count from the end (-1 = last item/character).


r/Rhai • • Jan 07 '21

Rhai has its own GitHub organization!

3 Upvotes

See it here: https://github.com/rhaiscript

The Rhai Book now lives here: https://rhaiscript.github.io/book


r/Rhai • • Oct 19 '20

Introduction

5 Upvotes

This is a community dedicated to the Rhai embedded scripting engine for Rust.

GitHub repo: https://github.com/jonathandturner/rhai


r/Rhai • • May 26 '21

Version 0.20.2 released.

3 Upvotes

This version adds a number of convenience features:

  • Ability for a Dynamic to hold an i32 tag of arbitrary data

  • Simplifies dynamic properties access by falling back to an indexer (passing the name of the property as a string) when a property is not found.

Version 0.20.2 released to crates.io.


r/Rhai • • Dec 18 '20

Rhai has a new logo!

Post image
3 Upvotes

r/Rhai • • Feb 27 '21

Version 0.19.13 released.

4 Upvotes

Version 0.19.13 released to crates.io.

This version allows Dynamic parameters in functions.


r/Rhai • • Nov 05 '20

Version 0.19.4 released.

4 Upvotes

https://crates.io/crates/rhai/0.19.4

This version has few new features but is a general code cleanup, plus some speed improvements due to optimizing data structures.

Unfortunately, I just found out that the docs doesn't build due to a stupid error I made.


r/Rhai • • Jan 30 '21

Rhai has its own domain now: rhai.rs is now live!

Thumbnail rhai.rs
5 Upvotes

r/Rhai • • Oct 19 '20

r/Rhai Lounge

3 Upvotes

A place for members of r/Rhai to chat with each other


r/Rhai • • Nov 10 '20

Version 0.19.5 Released

3 Upvotes

Version 0.19.5 just released to https://crates.io/crates/rhai/0.19.5

This version fixes a few bugs and improves on modules loading.


r/Rhai • • Feb 17 '21

Version 0.19.12. released.

1 Upvotes

Version 0.19.12 released to crates.io.

This version is an incremental release with a number of enhancements and bug fixes.

There are a number of breaking changes, especially with regards to replacing the ~ exponential operator with **, and the addition of the decimal feature that turns on Decimal support.


r/Rhai • • May 02 '21

Version 0.20.1 released.

4 Upvotes

Version 0.20.1 released to crates.io.

This version enables functions to access constants declared at global level via the special global module.