Build Backends.Fast.

Build & ship a backend without writing any infrastructure files. Instead get your infrastructure definitions from your code function signatures and annotations.

codehero backgroundstars

Get started in seconds

Build an app with your favourite Rust framework and deploy it immediately. We’ll take care of all the infrastructure.

1❯ cargo shuttle help
2A cargo command for the shuttle platform (https://www.shuttle.rs/)
3
4Usage: cargo-shuttle [OPTIONS] <COMMAND>
5
6Commands:
7  deploy      deploy a shuttle service
8  deployment  manage deployments of a shuttle service
9  init        create a new shuttle service
10  generate    generate shell completions
11  status      view the status of a shuttle service
12  logs        view the logs of a deployment in this shuttle service
13  clean       remove artifacts that were generated by cargo
14  stop        stop this shuttle service
15  secrets     manage secrets for this shuttle service
16  login       login to the shuttle platform
17  logout      log out of the shuttle platform
18  run         run a shuttle service locally
19  feedback    Open an issue on github and provide feedback
20  project     manage a project on shuttle
21  help        Print this message or the help of the given subcommand(s)
get started backgroundget started topstarsstars

01 Install

Install the CLI

$ cargo install cargo-shuttle

02 Initialize

Bootstrap your project

$ cargo shuttle init

03 Deploy

Take-off in 3, 2, 1..

$ cargo shuttle deploy

Loved by Engineers at

Bring your code, we'll handle the rest

Leave the deployment to us and focus on what matters, writing good code.

top left bgtop left starstop left stars 2

Rust, made simple

Shuttle makes it easy to connect to databases, has out-of-the-box logging support, abundant documentation and supports all major Rust frameworks. Yes, even if you are coming from JS.

top middle bgtop middle starstop middle stars 2

Vercel for Backends

Get an entire infrastructure configured without writing any infrastructure config.

top right bgtop right starstop right stars 2

No Vendor lock-in

No need to have your app hosted on our servers, you can deploy it to your own cloud or even run shuttle in your garage.

bottom left bgbottom left starsbottom left stars 2

Everything is Rust, Rust is everything

Get a database by just asking for one in your Rust code.

bottom middle bgbottom middle starsbottom middle stars 2

Build fast, redeploy instantly

Shuttle always uses the cache from previous builds to give you lightning-speed redeploys.

bottom right bgbottom right starsbottom right stars 2

Forever-free tier

Unlimited access to essential features, no strings attached.

Powered by our Community

Join us now

3.7k+

Github Stars

2.7k+

Discord Users

80+

Contributors

Starters

Set up and deploy a quick starter, in minutes, with detailed instructions on how it works.

  • bgstarsstars 2

    Build a Discord Bot

    Add custom functionality to your Discord server, using a bot written in Rust.

  • bgstarsstars 2

    URL Shortener

    Get a shuttle relational database and build a URL shortener service.

  • bgstarsstars 2

    Deploy a full-stack app with JS & Rust

    Use WebSockets, React and Rust to release a chat app end-to-end.

  • bgstarsstars 2

    There's more

    View all

How it works

With Shuttle you can take any Rust service code, and have it ready for deployment by adding a single annotation to your main function.

Your code is packaged and sent to Shuttle where it is compiled and deployed. After a few seconds, your app is already running in the cloud.

You can then add more annotations that control cloud resources. Adding components like databases, secrets or storage is as easy as adding arguments to a function.

The next time you deploy your app, Shuttle provisions and configures the resources you need. In minutes, you can build complex and scalable apps on industry-standard AWS products and never have to touch the AWS console.

use rocket::{get, routes};

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

#[shuttle_service::main]
async fn init() -> shuttle_service::ShuttleRocket {
    Ok(
        rocket::build()
            .mount("/", routes![hello])
    )
}
bg mobile

What the community says

Join thousands of developers using Shuttle. Connect with them on Discord.

profile picture

Dominykas

@chaosteil

Staff Software Engineer @ Uber

Game changer, what a great project.

profile picture

Matthias Endler

@mathiasendler

Rust Consultant @ Corrode

Deployed my second service with Shuttle and I really like it! It's fast and integrates well with cargo, so I can focus on the Rust code instead of the deployment. Well done!

profile picture

Peter Mertz

@mertzalertz

Lead Engineer @ Zed Financial

Shuttle is hands down the best way to deploy a rust app quickly, safely, with the ability to scale. It has a variety of frameworks supported, and the community surrounding it is incredible. Heroku for Rust but better!

profile picture

Stefan Baumgartner

@ddprrt

Owner oida.dev | Architect @ Dynatrace | Rust Linz

You soon realize Shuttle is much more than just a host for your app. It's your Rust framework for the cloud; Infrastructure as Crates! This puts Shuttle in front of everything else I've tried. I couldn't be more happy!

profile picture

Roberto Huertas

@robertohuertasm

Software Engineer @ Datadog

Mind-blowing! What a huge addition to the Rust ecosystem! I'm sure this will be a driveway to get more people into Rust.

profile picture

Deep

@deepg

Rust Software Engineer

I tried migrating my project from heroku to Shuttle and it works perfectly! Looking forward to more of it

rocket

Build the Future of Backend Development with us

Join the movement and help revolutionize the world of backend development. Together, we can create the future!

FAQ

Shuttle revolutionizes backend development by saving you valuable time. With our infrastructure from code approach, you can provision resources directly within your Rust codebase. Say goodbye to complex config files and the need to navigate through the AWS console. With a single line of code, your resources are ready. This efficiency translates to faster development cycles, allowing you to focus on building your application instead of managing or learning how to manage infrastructure.

Yes, Shuttle is open source enabling developers to not only use but also contribute to our platform. We believe in the power of open collaboration and transparency.

We build and deploy every project in its own container. This gives you safe isolation from other users, and also across all the projects that are owned by your account.

You can provision a static folder and serve your frontend counterpart seamlessly.

We believe Rust is the language of the future because of the safety guarantees Rust provides and the efficiency of running Rust code. Also, with Rust you build once and everything just works - saving you tons of time on maintenance. And Shuttle makes the experience of building your backend with Rust better than anything you can find for any other language.

We use Stripe for payments, providing a secure and easy way to pay for our services. You can access and manage your invoices and billing details in your Stripe dashboard. You can adjust your plan and billing information with just a few clicks.

Absolutely! You can upgrade or downgrade your plan at any time to better align with your project's requirements. Whether you're expanding or scaling back, we adapt to your needs, ensuring you have the resources necessary to succeed.

If you choose to cancel your subscription, you'll still have access to your existing resources until the end of your billing period. After that, your access to premium features and resources associated with your subscription will be downgraded to the free Community tier.

starsstars 2

Want to know more?

Join our Discord, we're happy to answer any questions!