Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Rust
  3. rune

rune

Apache-2.0Rust0.14.2

An embeddable dynamic programming language for Rust, designed for scripting and runtime extensibility.

Visit WebsiteGitHubGitHub
2.3k stars113 forks0 contributors

What is rune?

Rune is an embeddable dynamic programming language designed specifically for Rust. It allows developers to add scripting capabilities to Rust applications, enabling runtime configuration, modding, and user-extensible behavior without requiring recompilation of the main application.

Target Audience

Rust developers who need to add scripting, modding, or runtime configuration to their applications, such as game developers, tool builders, or anyone creating extensible systems.

Value Proposition

Rune provides a memory-safe, performant scripting language that integrates cleanly with Rust's type system and ecosystem, offering features like hot reloading and async support that are uncommon in embedded languages.

Overview

An embeddable dynamic programming language for Rust.

Use Cases

Best For

  • Adding modding support to Rust-based games
  • Creating configurable CLI tools with user scripts
  • Building plugin systems for Rust applications
  • Implementing runtime configuration without recompilation
  • Prototyping game logic or application behavior
  • Extending static Rust programs with dynamic behavior

Not Ideal For

  • High-performance applications where scripting overhead must be minimized, as Rune's VM introduces runtime costs compared to native Rust.
  • Projects requiring extensive third-party libraries or cross-language integration, due to Rune's Rust-centric design and limited ecosystem.
  • Teams prioritizing quick adoption with minimal setup, as Rune's integration requires verbose boilerplate and understanding of Rust's type system.

Pros & Cons

Pros

Efficient Virtual Machine

Rune runs on a stack-based VM with compact bytecode, ensuring good performance for embedded scripting, as highlighted in the README's focus on efficiency.

Seamless Rust Integration

The language allows easy calling of Rust functions and types from scripts, with built-in serde support and clean binding, making it ideal for extending Rust applications.

Memory Safety

Uses reference counting to prevent common memory errors, enhancing safety when running dynamic scripts within Rust, as noted in the features list.

Hot Reloading Support

Scripts can be modified at runtime without restarting the application, enabling rapid iteration and modding, a key feature emphasized in the README.

Cons

Complex Initial Setup

Integrating Rune requires verbose boilerplate code, as shown in the README example with Diagnostics and context building, which can be daunting for simple use cases.

Limited Library Ecosystem

As a niche language, Rune lacks the extensive third-party libraries found in established scripting languages like Lua, restricting out-of-the-box functionality.

Performance Overhead

Being a dynamic language on a VM, Rune introduces runtime overhead compared to native Rust, which may not suit CPU-intensive tasks despite its efficiency claims.

Frequently Asked Questions

Quick Stats

Stars2,255
Forks113
Contributors0
Open Issues68
Last commit16 days ago
CreatedSince 2020

Tags

#programming-language#hot-reloading#serde#embedding#macros#embedded#async#virtual-machine#scripting#dynamic-language#scripting-language#rust

Built With

R
Rust

Links & Resources

Website

Included in

Rust56.6k
Auto-fetched 22 hours ago

Related Projects

boaboa

Boa is an embeddable Javascript engine written in Rust.

Stars7,292
Forks631
Last commit2 days ago
rhairhai

Rhai - An embedded scripting language for Rust.

Stars5,416
Forks237
Last commit8 days ago
gluongluon

A static, type inferred and embeddable language written in Rust.

Stars3,403
Forks152
Last commit1 year ago
kclkcl

KCL Programming Language Core and API (CNCF Sandbox Project). https://kcl-lang.io

Stars2,367
Forks167
Last commit5 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub