xref: /wasmtime-44.0.1/docs/introduction.md (revision daa7fdf2)
1# Introduction
2
3[Wasmtime][github] is a standalone runtime for WebAssembly, WASI, and the
4Component Model by the [Bytecode Alliance][BA].
5
6[WebAssembly] (abbreviated Wasm) is a binary instruction format that is designed
7to be a portable compilation target for programming languages. Wasm binaries
8typically have a `.wasm` file extension. In this documentation, we'll also use
9the textual representation of the binary files, which have a `.wat` file
10extension.
11
12[WASI] (the WebAssembly System Interface) defines interfaces that provide a
13secure and portable way to access several operating-system-like features such as
14filesystems, networking, clocks, and random numbers.
15
16[The Component Model] is a Wasm architecture that provides a binary format for
17portable, cross-language composition. More specifically, it supports the use of
18interfaces via which components can communicate with each other. WASI
19is defined in terms of component model interfaces.
20
21Wasmtime runs WebAssembly code [outside of the Web], and can be used both as a
22command-line utility or as a library embedded in a larger application. It
23strives to be
24
25- **Fast**: Wasmtime is built on the optimizing [Cranelift] code generator.
26- **Secure**: Wasmtime's development is strongly focused on correctness and
27  security.
28- **Configurable**: Wasmtime uses sensible defaults, but can also be configured
29  to provide more fine-grained control over things like CPU and memory
30  consumption.
31- **Standards Compliant**: Wasmtime passes the official WebAssembly test suite
32  and the Wasmtime developers are intimately engaged with the WebAssembly
33  standards process.
34
35This documentation is intended to serve a number of purposes and within you'll
36find:
37
38* [How to use Wasmtime from a number of languages](lang.md)
39* [How to install and use the `wasmtime` CLI](cli.md)
40* Information about [stability](stability.md) and [security](security.md) in
41  Wasmtime.
42* Documentation about [contributing](contributing.md) to Wasmtime.
43
44... and more! The source for this guide [lives on
45GitHub](https://github.com/bytecodealliance/wasmtime/tree/main/docs) and
46contributions are welcome!
47
48[github]: https://github.com/bytecodealliance/wasmtime
49[BA]: https://bytecodealliance.org/
50[Cranelift]: https://github.com/bytecodealliance/wasmtime/blob/main/cranelift/README.md
51[WebAssembly]: https://webassembly.org/
52[WASI]: https://wasi.dev
53[outside of the Web]: https://webassembly.org/docs/non-web/
54[issue]: https://github.com/bytecodealliance/wasmtime/issues/new
55[The Component Model]: https://github.com/WebAssembly/component-model
56