Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
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
18 changes: 9 additions & 9 deletions pages/edge.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import DeployIcon from '../components/icons/deploy.svg'

# Wasmer Edge

Wasmer Edge is a next-generation cloud platform powered by WebAssembly, Wasmer and WASIX.
Wasmer Edge is a next-generation cloud platform powered by WebAssembly, Wasmer, and WASIX.

You can move now your applications to the Edge and scale them like serverless at extremely affordable prices.
You can now move your applications to the edge and scale them like serverless workloads at extremely affordable prices.

## 🐥 First Steps

Expand All @@ -25,8 +25,8 @@ To understand how the platform works, check out the [Architecture](/edge/archite
Wasmer Edge has many features, and we have many more in development:

- **Stateless** HTTP workloads: <br/>
You can use [proxy](/edge/learn/deployment-modes#proxy) or to run web servers in the edge. [WCGI](/edge/learn/deployment-modes.mdx#wcgi) mode to run CGI in the edge.
If you are interested about TCP/UDP, [please reach us so we can enable it for you](/edge/learn/deployment-modes#tcpudp-applications).
You can use [proxy](/edge/learn/deployment-modes#proxy) to run web servers at the edge or [WCGI](/edge/learn/deployment-modes.mdx#wcgi) to run CGI at the edge.
If you are interested in TCP/UDP, [please reach us so we can enable it for you](/edge/learn/deployment-modes#tcpudp-applications).
- **Automatic scaling**: <br/>
Workloads will be served by the Wasmer Edge network, on the servers closest
to the user, and will scale automatically to meet the demand.
Expand All @@ -35,9 +35,9 @@ Wasmer Edge has many features, and we have many more in development:
You can also configure additional aliases.
- **Versioned deployments and rollback**:<br/>
App deployment versions are tracked.
You can always access previous versions though a special URL, and rollback to
You can always access previous versions through a special URL, and roll back to
previous versions with a single CLI command or click.
You can also publish preview-versions and test them before switching them to active.
You can also publish preview versions and test them before switching them to active.
- **Custom domains with automatic SSL**: <br/>
You can configure custom domains and subdomains for your applications.
SSL certificates will automatically be provisioned and renewed for you.
Expand All @@ -49,19 +49,19 @@ Wasmer Edge has many features, and we have many more in development:
- **Persistent workloads**: <br />
Apps are stateless and auto-scaled by default, which is great for scalability
and cost-effectiveness, but sometimes you need to run a persistent workload
that keep running, even with no requests coming in.<br />
that keeps running even with no requests coming in.<br />
Persistent workloads will enable you to provision a fixed number of instances
that are kept alive by the edge runtime.

- **Persistent volumes**: <br />
Stateless apps are great for scalability, but eventually the state needs to
live somewhere.
You will be able to create persistent volumes, and mount these volumes into
You will be able to create persistent volumes and mount these volumes into
your workloads.

- **Private network**: <br />
Create secure, private networks to connect your workloads globally.
Powered by [DNET](/edge/architecture#wasmer-distributed-networking-dnet);
Powered by [DNET](/edge/architecture#wasmer-distributed-networking-dnet).

- **Scheduled tasks / cronjobs**: <br />
Running tasks at a certain interval is a common requirement.
Expand Down
32 changes: 16 additions & 16 deletions pages/edge/cli.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ The most important ones are `wasmer deploy` and the subcommands of `wasmer app`.

<Callout type="info">
**Note:** To deploy apps on Wasmer Edge an account is required. When
deploying an app, you will be prompted to login if you are not already.
deploying an app, you will be prompted to log in if you are not already.
</Callout>

<Callout>
Expand Down Expand Up @@ -50,10 +50,10 @@ Options:
...
```

The `wasmer deploy` command has many flags, but does not have any mandatory
argument. Its objective is that of loading the user-provided data - thus,
possibly, [publishing](/registry/cli) a package as well - in Wasmer Edge and
providing the needed informations for the user to manage their application.
The `wasmer deploy` command has many flags but does not have any mandatory
argument. Its objective is to load the user-provided data—possibly
[publishing](/registry/cli) a package as well—into Wasmer Edge and
provide the information needed for the user to manage their application.

Based on the kind of app the user wants to deploy, the `wasmer deploy`
command carries out different actions. In a nutshell, from the CLI perspective,
Expand All @@ -69,11 +69,11 @@ the package's manifest.

In the latter case, the `wasmer deploy` command recognizes that the user
might want to edit some of the metadata about the package and, if needed,
prompts the user to decide on that regard. One example is that of the package
prompts the user to decide accordingly. One example is that of the package
version: in interactive mode, if the `--bump` flag was not given, the user will
be asked if a patch version bump is needed. This, however, is not the only way
to specify the version of a package: for a deeper dive into this matter, check
out the [`publish` page](/registry/cli).
out the [`publish` page](/registry/cli).

Once these matters are decided upon, this deployment flow concludes just as the
former: your app is available!
Expand Down Expand Up @@ -112,13 +112,13 @@ Waiting for new deployment to become available...
Once an app is deployed, the `wasmer` CLI provides a number of tools to manage
it.

### Gathering informations about apps (`wasmer app info` and `wasmer app get`)
In order to fetch structured informations about your app, you can use the
`wasmer app get`, that provides the user with a number of informations about
### Gathering information about apps (`wasmer app info` and `wasmer app get`)
In order to fetch structured information about your app, you can use
`wasmer app get`, which provides the user with a number of information about
the app structured as a YAML value, ranging from the identifier of the app to
the raw value of the `app.yaml` config file used to create the app.
the raw value of the `app.yaml` config file used to create the app.

The `wasmer app info` command provides a synthesis of these informations, in
The `wasmer app info` command provides a synthesis of this information, in
particular the app name, the owner of the app, and relevant URLs.

```
Expand Down Expand Up @@ -178,7 +178,7 @@ Options:
--template <TEMPLATE>
A reference to the template to use.

It can be either an URL to a github repository - like `https://github.com/wasmer-examples/php-wasmer-starter` - or the name of a template that will be searched for in the selected registry, like `astro-starter`.
It can be either a URL to a GitHub repository like `https://github.com/wasmer-examples/php-wasmer-starter` or the name of a template that will be searched for in the selected registry, like `astro-starter`.

--package <PACKAGE>
Name of the package to use
Expand Down Expand Up @@ -211,8 +211,8 @@ wasmer app create
{/* [TODO]: Add link to templates list */}

Templates allow users to kickstart their custom application from one of the
available boilerplates like a static website, a php application, a javascript
worker and much more. Another possibility is that of creating an app from an
available boilerplates like a static website, a PHP application, a JavaScript
worker, and much more. Another possibility is that of creating an app from an
existing package: for example, as a starting step, the user can create the app
from an existing package, like
[`wasmer/hello`](https://wasmer.io/wasmer/hello).
Expand All @@ -232,7 +232,7 @@ owner: <YOUR-NAME>
package: wasmer/hello
```

This file contains all the necessary informations required to deploy your app
This file contains all the necessary information required to deploy your app
to Wasmer Edge. To learn more about this configuration file, refer to the
[dedicated _Learn_ page](/edge/learn/apps). After having everything in place -
whether it is from templates or pre-existing packages - the command will ask
Expand Down
46 changes: 23 additions & 23 deletions pages/edge/configuration.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { Callout } from "nextra-theme-docs";

# App Configuration (`app.yaml`)

Wasmer Edge's configuration is stored in a `app.yaml` file in the root of your project.
Wasmer Edge's configuration is stored in an `app.yaml` file in the root of your project.

## Example

Expand Down Expand Up @@ -143,7 +143,7 @@ volumes:
# A name for your volume.
# Must be unique for the given app.
- name: data
# Where to moint the volume into the filesystem.
# Where to mount the volume into the filesystem.
mount: /data
```

Expand All @@ -162,7 +162,7 @@ Database credentials are provided as *environment variables*:

Currently only `mysql` is supported.

**Note**: databases are tied to regions. When speciyfing a database, you should
**Note**: databases are tied to regions. When specifying a database, you should
also specify your desired region with the `locality.regions` setting.
Only some of the regions support databases!

Expand Down Expand Up @@ -201,12 +201,12 @@ capabilities:
requests:
- path: /
- path: /_bootstrap
# You can optionally speciy a maximum age.
# You can optionally specify a maximum age.
# If the maximum age is reached, a new snapshot will automatically
# be created, and the old ones discarded
max_age: 12h

# Optionally request settings:
# Optional request settings:
method: POST
body: "custom body"
headers:
Expand All @@ -216,13 +216,13 @@ capabilities:

### `health_checks`

The `health_checks` field is used to check if an application is working correctly. If the healthchecks fail, edge will restart the application. It is **optional** and its an array of healtcheck objects
The `health_checks` field is used to check if an application is working correctly. If the health checks fail, edge will restart the application. It is **optional** and it is an array of health check objects

- Required: `false`

Currently only supported healthcheck type is `http`. It executes an http request against the application. All the supported
Currently the only supported health check type is `http`. It executes an HTTP request against the application. All the supported

##### Example healthcheck
##### Example health check

```yaml filename="app.yaml" copy
health_checks:
Expand All @@ -239,27 +239,27 @@ health_checks:
expected_body_includes: Hello World
expected_body_regex: ".*Wasmer.*"
```
Fields for http healthcheck:
Fields for HTTP health check:
- #### `method`: Required
HTTP method to use.
HTTP method to use.
- #### `path`: Required
Path to send request to.
Path to send the request to.
- #### `interval`: Required
Duration between each request
Duration between each request.
- #### `timeout`: Required
Timeout duration for requests
Timeout duration for requests.
- #### `unhealthy_threshold`: Required
After `unhealthy_threshold` amount of failure of the http requests, app is considered unhealthy and will be restarted
After `unhealthy_threshold` failed HTTP requests, the app is considered unhealthy and will be restarted.
- #### `healthy_threshold`: Required
After `healthy_threshold` amount of failure of the http requests, app is considered healthy and will be restarted
After `healthy_threshold` successful HTTP requests, the app is considered healthy.
- #### `expected_status_codes`: Required
If the application returns these status codes, then the request will be count as successful
If the application returns these status codes, the request counts as successful.
- #### `expected_body_includes`:
If this is specified, response body should include the string defined in this field to be count as successful
If this is specified, the response body should include the string defined in this field to be counted as successful.
- #### `expected_body_regex`:
If this is specified, response body should be able to match the regular expression defined in this field to be count as successful
If this is specified, the response body should match the regular expression defined in this field to be counted as successful.

So in the example above, if the application fails two consequent request, application will be restarted. It will be keep restarted until it successfully responds to one request
So in the example above, if the application fails two consecutive requests, the application will be restarted. It will keep restarting until it successfully responds to one request.

### `locality`

Expand Down Expand Up @@ -292,16 +292,16 @@ The `scaling` field is used to configure how your application scales on Edge.

Scaling mode for the app.

**NOTE**: You should usually stick to the default behaviour,
**NOTE**: You should usually stick to the default behavior,
which is enabled when no scaling mode is specified.
Only use the below modes if you you are sure they are appropriate!
Only use the modes below if you are sure they are appropriate!

Available values:

* `<unset>`

If no scaling mode is specified, Edge will send multiple requests to each instance, and also scale up additional instances if required.
This is the default, and the recommended mode if your program can handle multiple requests concurrently (Rust, Go, ...).
This is the default and the recommended mode if your program can handle multiple requests concurrently (Rust, Go, ...).

* `single_concurrency`

Expand All @@ -323,4 +323,4 @@ scaling:

### `jobs`

This section is defined on [jobs](/edge/configuration/jobs) page.
This section is defined on the [jobs](/edge/configuration/jobs) page.
4 changes: 2 additions & 2 deletions pages/edge/get-started.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ Welcome to `wasmer deploy`. For most languages and frameworks, you can deploy yo


The `wasmer deploy` command will make sure that everything is in place for you to deploy your
app: it will guide you through the creation of the app and its deployment if doesn't exist,
or to redeploy after it changes.
app: it will guide you through the creation of the app and its deployment if it doesn't exist,
or redeploy it after it changes.

</Steps>

Expand Down
8 changes: 4 additions & 4 deletions pages/edge/guides/js-wintercg.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import CliVersionCallout from "@components/deploy/CliVersionCallout.mdx";

In this guide, you'll learn the process of deploying a JS service
worker on Wasmer Edge. We will cover installation of the CLI, setting up a new
Javascript worker, and deploying it.
JavaScript worker, and deploying it.

## Deploying a JS service worker

Expand All @@ -28,15 +28,15 @@ mkdir my-new-js-worker
cd my-new-js-worker
```

Then, running a single command, we can setup a js worker:
Then, running a single command, we can set up a JS worker:

```bash copy
wasmer deploy --template=js-worker
```
This will prompt you for the following:

- **App owner**: This is the owner of the app.
It can be your username or an organization; if you're logged in, the command will prompt you tochoose from your namespaces: by default, it will be your username.
It can be your username or an organization; if you're logged in, the command will prompt you to choose from your namespaces: by default, it will be your username.
- **App name**: This is the name of your app. By default, it will be the name of the current directory.

Expect to see output similar to this:
Expand All @@ -49,7 +49,7 @@ It seems you are trying to create a new app!
Loading local package (manifest path: ~/wasmer-user/Projects/jsworker/.)
✔ Correctly built package locally
✔ Package correctly uploaded
Succesfully pushed release to namespace wasmer-user on the registry
Successfully pushed release to namespace wasmer-user on the registry
Deploying app jsworker (wasmer-user) to Wasmer Edge...

App jsworker (wasmer-user) was successfully deployed 🚀
Expand Down
4 changes: 2 additions & 2 deletions pages/edge/learn/instaboot.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Wasmer Edge provides a special feature called `InstaBoot`, which can
significantly reduce cold start times of Edge applications.

<Callout type="info">
Learn more about Instaboot and how it works in [Wasmer's official announcement](
Learn more about InstaBoot and how it works in [Wasmer's official announcement](
https://wasmer.io/posts/announcing-instaboot-instant-cold-starts-for-serverless-apps).
</Callout>

Expand Down Expand Up @@ -185,7 +185,7 @@ Good use cases:
Like PHP, Python will also have to load code at runtime and prepare it for
execution. While the difference is not quite as stark as with PHP, the speedup
can still be very significant.
* WinterJS (Javascript):
* WinterJS (JavaScript):
While WinterJS startup times are generally fast, InstaBoot can still often
cut cold start times in half.
* Expensive cache warm-up
Expand Down
2 changes: 1 addition & 1 deletion pages/edge/learn/remote-sessions.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ This means you will be able to close the connection and then re-connect to your
session later on, giving you a persistent remote environment.

While this isn't available quite yet, sessions are already useful to explore the
ecosystem and to test out the behaviour of your own apps.
ecosystem and to test out the behavior of your own apps.

## Usage

Expand Down
6 changes: 3 additions & 3 deletions pages/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,14 @@ Welcome to the Wasmer Documentation! 👋
## SDKs

Wasmer is available in multiple programming languages and operating systems in the shape of SDKs.
Using these SDKs, it's possible to embed wasmer modules compiled from other languages into your application.
Using these SDKs, it's possible to embed Wasmer modules compiled from other languages into your application.
We have set up the SDKs to allow using Wasmer easily anywhere:

* [Wasmer JavaScript SDK](/sdk/wasmer-js): run your Wasmer packages in Javascript
* [Wasmer JavaScript SDK](/sdk/wasmer-js): run your Wasmer packages in JavaScript

## Social

For the latest articles on Wasmer features and developments, check out [our blog](https://wasmer.io/posts) or [follow us on X](https://x.com/wasmerio)!
You can also chat with us using [Wasmer Discord channel](https://discord.com/invite/qBTfsNP7N8).
You can also chat with us using the [Wasmer Discord channel](https://discord.com/invite/qBTfsNP7N8).

Let's now dig deeper into how to install Wasmer, shall we? 🙂
4 changes: 2 additions & 2 deletions pages/install.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Wasmer allows you to run applications either **Standalone** (_via the CLI_) or *
```

<Callout type="info">
Other installation methods available here:
Other installation methods are available here:
https://github.com/wasmerio/wasmer-install
</Callout>

Expand Down Expand Up @@ -49,7 +49,7 @@ Wasmer allows you to run applications either **Standalone** (_via the CLI_) or *
```

<Callout type="info">
Other installation methods available here:
Other installation methods are available here:
https://github.com/wasmerio/wasmer-install
</Callout>

Expand Down
6 changes: 3 additions & 3 deletions pages/registry.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import PublishIcon from '../components/icons/publish.svg'

# Wasmer Registry

The Wasmer Registry stores all Wasmer packages and allows exploring packages from other users and distribute your own ones.
The Wasmer Registry stores all Wasmer packages and allows exploring packages from other users and distributing your own.

You can explore packages published to the Wasmer Registry at [wasmer.io](https://wasmer.io/explore) or you can
also [search for packages](https://wasmer.io/search?type=PACKAGE).
Expand All @@ -19,9 +19,9 @@ To publish your first package, check out the [Getting Started](/registry/get-sta

## Features

All packages published to the Wasmer registry will automatically be available to run with the `wasmer` CLI tool, but not just that...
All packages published to the Wasmer registry are automatically available to run with the `wasmer` CLI tool, and more:

- **Executables**: The registry will automatically create executables for all platforms and chipsets, with no dependency of Wasmer
- **Executables**: The registry will automatically create executables for all platforms and chipsets, with no dependency on Wasmer
- **Automatic documentation**: If you annotate your package with bindings, the documentation and APIs will be automatically generated for all programming languages.


Expand Down
Loading