Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clarify more concisely how concepts relate to each other #64

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions component-model/src/design.md
Original file line number Diff line number Diff line change
@@ -1 +1,10 @@
# Design

This section introduces the core concepts and [rationale](./design/why-component-model.md) of the component model.

* An [interface](./design/interfaces.md) describes the types and functions used for a specific, focused bit of functionality.
* A [world](./design/worlds.md) assembles interfaces to express what features a component offers, and what features it depends on.
* [WIT (Wasm Interface Types)](./wit-overview.md) is the IDL (Interface Definition Language) used to formally define interfaces and worlds.
* A [package](./design/packages.md) is a set of WIT files containing a related set of interfaces and worlds.
* WASI (the WebAssembly System Interface) defines a family of interfaces for common system-level functions, and worlds describing common execution environments, such as the command line or a cloud-based HTTP server.
* A [component](./design/components.md) is a special kind of Wasm file, which may contain one or more core modules and/or sub-components composed together, and conforms to a world.