• Stars
    star
    229
  • Rank 174,666 (Top 4 %)
  • Language
    Elixir
  • License
    Apache License 2.0
  • Created over 3 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

wasmCloud host runtime that leverages Elixir/OTP and Rust to provide simple, secure, distributed application development using the actor model

wasmCloud logo

wasmcloud_host build status latest release homepage documentation site Powered by WebAssembly

wasmCloud Host Runtime (OTP)

The wasmCloud Host Runtime is a server process that securely hosts and provides dispatch for actors and capability providers. This runtime is designed to take advantage of WebAssembly's small footprint, secure sandbox, speed, and portability to allow developers to write boilerplate-free code that embraces the actor model and abstracts away dependencies on non-functional requirements via well-defined interfaces.

This host runtime is written in Elixir and extensively leverages the decades of work, testing, and improvements that have gone into the OTP framework. There are a number of excellent Elixir and OTP references online, but we highly recommend starting with the Pragmatic Programmers Elixir and OTP library of books.

To get started with installation and exploration, check out the getting started section of our documentation.

The wasmCloud Host Runtime is made up of two pieces:

  • The Host Core
  • Dashboard Web UI

Host Core

The host core consists of all of the "headless" (no UI) functional components of the system. This OTP application and its contained supervision tree represent the core of the wasmCloud OTP host runtime.

You can find the host core in this github repository.

Dashboard Web UI

The dashboard web UI (often colloquially referred to as the washboard) is a Phoenix application that fits snugly atop the host core, providing real-time web access to a variety of information, telemetry, and insight while also exposing a graphical interface to controlling the host and portions of the lattice.

You can find the dashboard UI in this github repository.

NATS

All of wasmCloud's lattice functionality requires the use of NATS. To learn more, check out the lattice section of our documentation.

More Repositories

1

wasmCloud

wasmCloud allows for simple, secure, distributed application development using WebAssembly components and capability providers.
Rust
1,329
star
2

wascc-host

Library for hosting actors and capability providers in a host process
Rust
202
star
3

wash

WAsmcloud SHell - the comprehensive command-line tool for wasmCloud development
Rust
149
star
4

examples

ARCHIVED: This repository contains examples for pre-1.0 versions of wasmCloud. All examples are now located in the main wasmCloud repository https://github.com/wasmCloud/wasmCloud/tree/main/examples.
CSS
124
star
5

wadm

wasmCloud Application Deployment Manager (wadm): Declarative application deployments for wasmCloud applications.
Rust
96
star
6

capability-providers

ARCHIVED: wasmCloud pre-1.0 capability providers. See up-to-date capability providers in the main repository, https://github.com/wasmcloud/wasmcloud
Rust
79
star
7

wascap

Embed, extract, and validate capability claims in JWTs for WebAssembly modules
Rust
65
star
8

wasmcloud-js

wasmCloud JavaScript Host Runtime
TypeScript
42
star
9

nkeys

Rust implementation of the NATS nkeys library
Rust
38
star
10

interfaces

wasmCloud API interfaces: smithy IDLs and shared libraries
CSS
34
star
11

wascc-actor

Now deprecated in favor of using wapc-generated types and wrappers
Rust
33
star
12

kasmcloud

Running and managing Wasm(actors) and capability providers in Kubernetes
Rust
32
star
13

weld

tools for processing smithy models
CSS
18
star
14

wasmcloud-operator

Kubernetes operator for declaratively deploying wasmCloud applications (via wadm) and hosts on Kubernetes.
Rust
18
star
15

actor-interfaces

Libraries used by actors to interface with different capability providers
Rust
16
star
16

krustlet-wasmcloud-provider

Kubernetes Rust Kubelet provider for wasmCloud
Rust
15
star
17

project-templates

wasmCloud project templates - use with 'wash new'
HTML
14
star
18

provider-sdk-go

SDK for writing wasmCloud providers in Go.
Go
11
star
19

aws-lambda-wascc-runtime

AWS Lambda Runtime for Hosting waSCC Actors
Rust
10
star
20

wasmdome

Assembly Mechs: Beyond WasmDome - a game used to demonstrate waSCC features & use cases
Rust
9
star
21

wasmcloud.com

https://wasmCloud.com website, documentation, blog, and community meetings, built with Docusaurus.
MDX
9
star
22

wasm-air

Use case scenario exploration to build a "Flight Aware"-like distributed system
Rust
8
star
23

wasmcloud-dev-site

Documentation site for wasmCloud.dev
HTML
8
star
24

machine-learning

5
star
25

actor-tinygo

SDK for writing wasmCloud actors in TinyGo
Go
5
star
26

wasmcloud-k8s-operator

wasmCloud Kubernetes Operator
Go
4
star
27

wascc-actor-as

Build waSCC Actors in AssemblyScript
TypeScript
4
star
28

lattice-observer

A reusable Elixir library for monitoring a lattice and deriving observed state
Elixir
3
star
29

wasmcloud-component-adapters

Rust
2
star
30

homebrew-wasmcloud

Homebrew tap for wasmCloud
Ruby
2
star
31

provider-archive

Library for PAR files - compressable TARs for managing OS/CPU-native capability provider plugins and signed claims
Rust
2
star
32

new-provider-template

Cargo generate template for creating a new native capability provider
Rust
2
star
33

control-interface-client

API and rust interface library for interacting with the lattice control interface
Rust
2
star
34

models

2
star
35

adr

Journal of Architectural Decision Records made for the project
2
star
36

stack-trader

[DEPRECATED] - Very outdated technology demo in the form of a game illustrating the use of waSCC and a cloud-based ECS
JavaScript
2
star
37

.github

1
star
38

wasmfrontiers-site

Website for wasmfrontiers.com
HTML
1
star
39

branding

wasmCloud logos
1
star
40

community-meetings

Notes for community calls are now handled in https://github.com/wasmcloud/wasmcloud.com-dev
1
star
41

amazon-sqs-messaging-provider

An Amazon SQS capability provider that implements the wascc:messaging protocol
Rust
1
star
42

tutorials

Shell
1
star
43

wasmcloud-test

test-related tools, utilities, and libraries
Rust
1
star
44

wasmcloud-messaging

Repository for the wasmcloud-messaging WebAssembly component model interface
1
star
45

frontiers

wasmCloud Frontiers
Elixir
1
star
46

wasmCloud-contrib

Community contributions of providers, components, and demos
1
star
47

common-actions

Common GitHub actions for use across wasmCloud repositories
1
star
48

wasmdome-web

Experimental web UI for the Assembly Mechs: Beyond WasmDome game demonstration
HTML
1
star