awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
lunatic-solutions avatar

lunatic-solutions/lunatic

0
View on GitHub↗
4,867 stars·147 forks·Rust·Apache-2.0·34 viewslunatic.solutions↗

Lunatic

Lunatic is a WebAssembly runtime and concurrent process manager that implements an Erlang-inspired model of lightweight concurrency and fault tolerance. It functions as a distributed actor system where isolated processes communicate via message passing across a network of linked nodes.

The system utilizes a WebAssembly sandbox environment to isolate memory and restrict system call permissions for each individual process. This capability-based security model ensures that processes are sandboxed to safely execute untrusted code.

The platform provides a fault-tolerant supervision tree for hierarchical monitoring and automatic restarts of failing processes. It manages high-concurrency workloads using a preemptive work-stealing scheduler to execute thousands of lightweight green threads.

The runtime supports distributed system coordination by clustering nodes across different physical machines and handles network traffic for protocols such as TCP and WebSockets.

Features

  • Green Threads - Runs thousands of concurrent lightweight green threads with minimal memory overhead to handle massive simultaneous workloads.
  • Server-Side WebAssembly Runtimes - Acts as a server-side runtime that executes WebAssembly components as application handlers for scalable server applications.
  • Asynchronous Message Passings - Provides asynchronous, non-blocking message passing between isolated processes using runtime-managed queues to avoid shared state.
  • Process Isolation - Isolates every process in its own memory space to prevent a crash in one unit from affecting others.
  • High-Concurrency Runtimes - Designed as a high-concurrency runtime that manages massive parallelism and efficient resource utilization for lightweight tasks.
  • Lightweight Process Management - Manages the execution of thousands of low-overhead lightweight processes to handle massive amounts of simultaneous tasks.
  • Supervision Trees - Utilizes hierarchical supervision trees to monitor child processes and automatically restart them upon failure.
  • WebAssembly - Provides a comprehensive runtime for executing portable WebAssembly binary code with high-concurrency and fault-tolerance features.
  • Code Sandboxing Environments - Provides isolated execution environments that protect the host system by sandboxing untrusted or generated code.
  • Wasm Sandboxes - Utilizes WebAssembly sandboxes to isolate the memory of every execution unit, preventing crashes from affecting other processes.
  • Capability-Based Access Controls - Implements a security model that grants permissions via delegatable authorization objects to safely execute untrusted code.
  • Capability-Based Security - Implements a capability-based security model that restricts system call access to the network and filesystem on a per-process basis.
  • Process Restriction Policies - Enforces granular capability limits on sandboxed processes, specifically restricting network and filesystem access at the system call level.
  • Node Clustering - Connects multiple runtime instances into a secure cluster to spread computing workloads across different physical machines.
  • Fiber-Based Concurrent Execution - Executes isolated, lightweight tasks in a high-concurrency environment to prevent individual failures from impacting the system.
  • Distributed Actor Frameworks - Provides a framework implementing the actor model for building scalable systems across a network of linked nodes.
  • Distributed Cluster Coordination - Enables multiple runtime instances to connect over a network to coordinate workloads and synchronize state across different machines.
  • Fault Tolerance Implementation - Implements automated recovery mechanisms using supervision trees to ensure system continuity when processes fail.
  • Message Passing Channels - Provides synchronized communication primitives via channels for exchanging data between isolated processes without shared state.
  • Distributed Node Connectivity - Links multiple runtime instances across a network to coordinate work and synchronize data in a distributed environment.
  • Process Lifecycle Monitors - Provides actor-level lifecycle monitoring to create, cancel, and monitor processes via a fault-tolerant supervision system.
  • OTP-Style Supervision Trees - Implements Erlang-inspired hierarchical supervision trees that automatically restart failed child processes to ensure high availability.
  • Portable Binaries - Ships as a single compiled binary that executes across different hardware architectures and operating systems without recompilation.
  • Work-Stealing Schedulers - Employs a work-stealing scheduler to balance lightweight actor tasks across OS threads and ensure fair execution.
  • Distributed Coordination Systems - Includes mechanisms for managing state and synchronizing workloads across a cluster of distributed runtime nodes.
  • Preemptive Scheduling Mechanisms - Uses a preemptive scheduling mechanism to force context switches, preventing long-running tasks from blocking system threads.

Star history

Star history chart for lunatic-solutions/lunaticStar history chart for lunatic-solutions/lunatic

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does lunatic-solutions/lunatic do?

Lunatic is a WebAssembly runtime and concurrent process manager that implements an Erlang-inspired model of lightweight concurrency and fault tolerance. It functions as a distributed actor system where isolated processes communicate via message passing across a network of linked nodes.

What are the main features of lunatic-solutions/lunatic?

The main features of lunatic-solutions/lunatic are: Green Threads, Server-Side WebAssembly Runtimes, Asynchronous Message Passings, Process Isolation, High-Concurrency Runtimes, Lightweight Process Management, Supervision Trees, WebAssembly.

Which projects share features with lunatic-solutions/lunatic?

Projects with overlapping indexed features include: puniverse/quasar — Quasar is a JVM concurrency framework that implements the actor model and a lightweight thread library. It provides… ergo-services/ergo — Ergo is a distributed actor framework for Go that implements the Erlang distribution protocol, enabling the… janet-lang/janet — Janet is a Lisp-based dynamic programming language featuring a register-based bytecode virtual machine and an… erlang/otp — OTP is a concurrent programming framework and distributed computing platform that serves as the Erlang runtime… akka/akka-core — Akka Core is an actor model framework and asynchronous concurrency library used for building scalable and resilient… lonng/nano — Nano is a distributed application framework designed for building systems using an actor-based messaging model. It…

Projects sharing features with Lunatic

These projects share indexed features with Lunatic. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • puniverse/quasarpuniverse avatar

    puniverse/quasar

    4,553View on GitHub↗

    Quasar is a JVM concurrency framework that implements the actor model and a lightweight thread library. It provides isolated execution units that communicate via asynchronous message passing to eliminate shared mutable state. The project distinguishes itself through a distributed actor system capable of operating across multiple cluster nodes with location-transparent registries and actor state migration. It utilizes a work-stealing fiber scheduler to manage millions of lightweight threads, allowing tasks to suspend during non-blocking I/O operations without stalling underlying system threads

    Javaactorsconcurrencyfibers
    View on GitHub↗4,553
  • ergo-services/ergoergo-services avatar

    ergo-services/ergo

    4,441View on GitHub↗

    Ergo is a distributed actor framework for Go that implements the Erlang distribution protocol, enabling the construction of resilient, concurrent applications that can communicate transparently with Erlang/OTP nodes. At its core, it provides an actor model with isolated lightweight processes, priority-ordered mailboxes, and a meta-process architecture that separates blocking I/O from sequential message handling to prevent actor freezing. The framework includes a Raft-inspired cluster consensus system for leader election and automatic failover, along with OTP-style supervision trees that organi

    Goactor-modelactorsdistributed
    View on GitHub↗4,441
  • janet-lang/janetjanet-lang avatar

    janet-lang/janet

    4,308View on GitHub↗

    Janet is a Lisp-based dynamic programming language featuring a register-based bytecode virtual machine and an embeddable scripting engine. It functions as a fiber-based concurrency runtime and includes a parsing engine based on Parsing Expression Grammars. The project is distinguished by its ability to be integrated into C or C++ applications via a minimal header interface. It utilizes a Lisp-style macro system for compile-time code transformation and employs prototype-based table inheritance for object-oriented behavior. The runtime covers a broad set of capabilities, including asynchronous

    Ccfunctional-languageimperative-language
    View on GitHub↗4,308
  • erlang/otperlang avatar

    erlang/otp

    12,252View on GitHub↗

    OTP is a concurrent programming framework and distributed computing platform that serves as the Erlang runtime environment. It provides a fault-tolerant operating environment designed for building scalable, real-time systems that manage massive amounts of simultaneous tasks through asynchronous messaging. The environment is distinguished by its use of an actor-based concurrency model and hierarchical supervision trees that automatically restart failed processes. It supports hot code loading to allow system updates without downtime and utilizes a preemptive user-space scheduler to manage light

    Erlang
    View on GitHub↗12,252
  • Compare all 30 related projects→