Shuttle.toml
The fileShuttle.toml
can be used for project-local configuration.
For the current options available, check out Deployment files.
Workspaces
Shuttle supports cargo workspaces, but only one Shuttle service per workspace. The first binary target using the#[shuttle_runtime::main]
macro will be targeted for local runs and deployments.
If Shuttle.toml
or Secrets are used, those files should be placed in the root of the workspace.
This is an example of a workspace structure with shared code between a backend and frontend crate:
Cargo feature flags
If the cargo featureshuttle
exists, Shuttle activates it and disables default features.
In this example, Shuttle will enable the features shuttle
and bar
.
To use default features on Shuttle, add default
to the shuttle array.
Cargo.toml
Multiple binaries
If you want to keep your project structured for allowing both running with and without Shuttle, check out the standalone-binary example. This is great for gradually adding Shuttle into your project..shuttle/config.toml
The.shuttle/config.toml
is created when linking your project folder to a Shuttle project.
It is added to .gitignore
by default, and should not be committed.