rocket 0.5.0-rc.1

Web framework with a focus on usability, security, extensibility, and speed.
Documentation

Rocket - Core API Documentation

Hello, and welcome to the core Rocket API documentation!

This API documentation is highly technical and is purely a reference. There's an overview of Rocket on the main site as well as a full, detailed guide. If you'd like pointers on getting started, see the quickstart or getting started chapters of the guide.

Usage

Depend on rocket in Cargo.toml:

[dependencies]
rocket = "0.5.0-rc.1"

Note that development versions, tagged with -dev, are not published and need to be specified as git dependencies.

See the guide for more information on how to write Rocket applications. Here's a simple example to get you started:

#[macro_use] extern crate rocket;

#[get("/")]
fn hello() -> &'static str {
"Hello, world!"
}

#[launch]
fn rocket() -> _ {
rocket::build().mount("/", routes![hello])
}

Features

To avoid compiling unused dependencies, Rocket gates certain features, all of which are disabled by default:

Feature Description
secrets Support for authenticated, encrypted private cookies.
tls Support for TLS encrypted connections.
json Support for JSON (de)serialization.
msgpack Support for MessagePack (de)serialization.
uuid Support for UUID value parsing and (de)serialization.

Features can be selectively enabled in Cargo.toml:

[dependencies]
rocket = { version = "0.5.0-rc.1", features = ["secrets", "tls", "json"] }

Configuration

Rocket offers a rich, extensible configuration system built on Figment. By default, Rocket applications are configured via a Rocket.toml file and/or ROCKET_{PARAM} environment variables, but applications may configure their own sources. See the configuration guide for full details.

Testing

The [local] module contains structures that facilitate unit and integration testing of a Rocket application. The top-level [local] module documentation and the testing guide include detailed examples.