[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-5593":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":16,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":16,"compositeScore":19,"rankGlobal":10,"rankLanguage":10,"license":20,"archived":21,"fork":22,"defaultBranch":23,"hasWiki":22,"hasPages":22,"topics":24,"createdAt":10,"pushedAt":10,"updatedAt":34,"readmeContent":35,"aiSummary":36,"trendingCount":16,"starSnapshotCount":16,"syncStatus":37,"lastSyncTime":38,"discoverSource":39},5593,"shuttle","shuttle-hq\u002Fshuttle","shuttle-hq","Build & ship backends without writing any infrastructure files.","https:\u002F\u002Fshuttle.dev",null,"Rust",6921,297,25,35,0,1,13,38.42,"Apache License 2.0",true,false,"main",[25,26,27,28,29,30,31,32,33],"baas","deployment","devops","framework","paas","rust","rust-lang","web","web-framework","2026-06-12 02:01:12","\u003C!-- markdownlint-disable -->\n\u003Cp align=\"center\">\n\u003Cimg width=\"300\" src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fshuttle-hq\u002Fshuttle\u002Fmaster\u002Fassets\u002Flogo-rectangle-transparent.png\"\u002F>\n\u003C\u002Fp>\n\u003Cbr>\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fshuttle-hq\u002Fshuttle\u002Fsearch?l=rust\">\n    \u003Cimg alt=\"language\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flanguage-Rust-orange.svg\">\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fdocs.shuttle.dev\u002F\">\n    \u003Cimg alt=\"docs\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdocs-shuttle.dev-orange\">\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fdocs.rs\u002Fshuttle-runtime\">\n    \u003Cimg alt=\"crate-docs\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fdocs-docs.rs-orange\">\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fcircleci.com\u002Fgh\u002Fshuttle-hq\u002Fshuttle\u002F\">\n    \u003Cimg alt=\"build status\" src=\"https:\u002F\u002Fcircleci.com\u002Fgh\u002Fshuttle-hq\u002Fshuttle.svg?style=shield\"\u002F>\n  \u003C\u002Fa>\n\u003C\u002Fp>\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fcrates.io\u002Fcrates\u002Fcargo-shuttle\">\n    \u003Cimg alt=\"crates\" src=\"https:\u002F\u002Fimg.shields.io\u002Fcrates\u002Fd\u002Fcargo-shuttle\">\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fdiscord.gg\u002Fshuttle\">\n    \u003Cimg alt=\"discord\" src=\"https:\u002F\u002Fimg.shields.io\u002Fdiscord\u002F803236282088161321?logo=discord\"\u002F>\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Fshuttle_dev\">\n    \u003Cimg alt=\"Twitter Follow\" src=\"https:\u002F\u002Fimg.shields.io\u002Ftwitter\u002Ffollow\u002Fshuttle_dev\">\n  \u003C\u002Fa>\n\u003C\u002Fp>\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Fconsole.algora.io\u002Forg\u002Fshuttle\u002Fbounties?status=open\">\n    \u003Cimg alt=\"open bounties\" src=\"https:\u002F\u002Fimg.shields.io\u002Fendpoint?url=https%3A%2F%2Fconsole.algora.io%2Fapi%2Fshields%2Fshuttle%2Fbounties%3Fstatus%3Dopen\"\u002F>\n  \u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fconsole.algora.io\u002Forg\u002Fshuttle\u002Fbounties?status=completed\">\n    \u003Cimg alt=\"rewarded bounties\" src=\"https:\u002F\u002Fimg.shields.io\u002Fendpoint?url=https%3A%2F%2Fconsole.algora.io%2Fapi%2Fshields%2Fshuttle%2Fbounties%3Fstatus%3Dcompleted\"\u002F>\n  \u003C\u002Fa>\n\u003C\u002Fp>\n\u003Cbr>\n\n\u003Ch1 align=\"center\">Fastest Way to Build & Ship Rust Apps\u003C\u002Fh1>\n\u003Cdiv align=\"center\">\nGet resources and deploy your apps with a few lines of code.\n\u003C\u002Fdiv>\n\n\u003Ch3 align=\"center\">Simple. &nbsp; Easy. &nbsp; Joyful.\u003C\u002Fh3>\n\n\u003Cp align=\"center\">\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fshuttle-hq\u002Fshuttle\u002Fissues\u002Fnew?assignees=&labels=S-Triage%2CT-Bug&projects=&template=BUG-REPORT.yml&title=%5BBug%5D%3A+\">Report Bug\u003C\u002Fa>\n    ·\n    \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fshuttle-hq\u002Fshuttle\u002Fissues\u002Fnew?assignees=&labels=S-Triage%2CT-Feature+Request&projects=&template=FEATURE-SUGGESTION.yml&title=%5BFeature%5D%3A+\">Request a Feature\u003C\u002Fa>\n    ·\n  \u003Ca href=\"https:\u002F\u002Fdiscord.gg\u002Fshuttle\">Join Our Discord\u003C\u002Fa>\n    ·\n    \u003Ca href=\"https:\u002F\u002Fx.com\u002Fshuttle_dev\">Follow us on X\u003C\u002Fa>\n  \u003C\u002Fp>\n\n\u003Cdiv align=\"center\">\u003Cimg src=\"https:\u002F\u002Fi.imgur.com\u002F1qdWipP.gif\" width=\"100%\" >\u003C\u002Fdiv>\n\u003Cbr>\n\n\n*\u003Cdiv align=\"center\">⭐ If you find Shuttle interesting, consider starring this repo to help spread the word.\u003C\u002Fdiv>*\n\u003Cbr>\n\n## Features\n\n- **One-line Resource Provisioning:** Get a database or other resource by adding a single line of code to your main file. No config or yaml files required.\n- **Rapid Development:** It takes 2 minutes from project initialization to a deployed project. It takes seconds to provision a resource, and get it deployed to production.\n- **First-class support for popular Rust frameworks:** [Axum](https:\u002F\u002Fdocs.shuttle.dev\u002Fexamples\u002Faxum), [Actix Web](https:\u002F\u002Fdocs.shuttle.dev\u002Fexamples\u002Factix), [Rocket](https:\u002F\u002Fdocs.shuttle.dev\u002Fexamples\u002Frocket), and [more](https:\u002F\u002Fdocs.shuttle.dev\u002Fexamples\u002Fother)\n- **Security:** Let us worry about the security & permissions while you focus on writing good code.\n\u003Cbr>\n\u003Cbr>\n\n## Quick Start\n\nOn Linux and macOS, you can use this install script, which will automatically install the correct target for your OS and distro:\n\n```sh\ncurl -sSfL https:\u002F\u002Fwww.shuttle.dev\u002Finstall | bash\n```\n\nOn Windows, you can use this install script to do the same:\n\n```powershell\niwr \"https:\u002F\u002Fwww.shuttle.dev\u002Finstall-win\" | iex\n```\n\nAfter installing, log in with:\n\n```sh\nshuttle login\n```\n\nTo initialize your project, simply write:\n\n```bash\nshuttle init --template axum hello-world\n```\n\nAnd to deploy it, write:\n\n```bash\ncd hello-world\nshuttle deploy\n```\n\nAnd... that's it!\n\n```text\nService Name:  hello-world\nDeployment ID: 3d08ac34-ad63-41c1-836b-99afdc90af9f\nStatus:        running\nLast Updated:  2022-04-01T08:32:34Z\nURI:           https:\u002F\u002Fhello-world.shuttleapp.rs\n```\n\nFeel free to build on top of the generated `hello-world` boilerplate or take a stab at one of our [examples](https:\u002F\u002Fgithub.com\u002Fshuttle-hq\u002Fshuttle-examples).\n\nFor the full documentation, visit [our docs](https:\u002F\u002Fdocs.shuttle.dev).\n\u003Cbr>\n\u003Cbr>\n\n## Quick Look\n\nBelow is a basic \"Hello World\" application written in Axum:\n```rust\nuse axum::{routing::get, Router};\n\n#[tokio::main]\nasync fn main() {\n    let app = Router::new().route(\"\u002F\", get(hello_world));\n\n    let listener = tokio::net::TcpListener::bind(\"127.0.0.1:3000\")\n        .await\n        .unwrap();\n    println!(\"listening on {}\", listener.local_addr().unwrap());\n    axum::serve(listener, app).await.unwrap();\n}\n\nasync fn hello_world() -> &'static str {\n    \"Hello, world!\"\n}\n```\n\nIn order to be able to deploy it with a single command, we update the snippet as follows:\n\n```rust\nuse axum::{routing::get, Router};\n\nasync fn hello_world() -> &'static str {\n    \"Hello, world!\"\n}\n\n#[shuttle_runtime::main]\nasync fn main() -> shuttle_axum::ShuttleAxum {\n    let router = Router::new().route(\"\u002F\", get(hello_world));\n\n    Ok(router.into())\n}\n```\n\nNow, with just `shuttle deploy`, you can see your application live. But let's enhance it further by adding a shared Postgres database:\n\n```rust\nuse axum::{routing::get, Router};\n\nasync fn hello_world() -> &'static str {\n    \"Hello, world!\"\n}\n\n#[shuttle_runtime::main]\nasync fn main(\n    #[shuttle_shared_db::Postgres] pool: sqlx::PgPool,\n) -> shuttle_axum::ShuttleAxum {\n\n    pool.execute(include_str!(\"..\u002Fschema.sql\"))\n        .await\n        .expect(\"failed to run migrations\");\n\n    let router = Router::new().route(\"\u002F\", get(hello_world));\n\n    Ok(router.into())\n}\n```\n\nNow, if we run `shuttle deploy`, we'll have an up and running project with a database inside & ready to use.\n\u003Cbr>\n\u003Cbr>\n\n## Repositories\n\n| Name | Description |\n|-|-|\n| [shuttle](https:\u002F\u002Fgithub.com\u002Fshuttle-hq\u002Fshuttle) 🚀 (This repo) | All library crates and the Shuttle CLI. |\n| [shuttle-examples](https:\u002F\u002Fgithub.com\u002Fshuttle-hq\u002Fshuttle-examples) 👨‍🏫 | Officially maintained examples of projects that can be deployed on Shuttle. |\n| [shuttle-docs](https:\u002F\u002Fgithub.com\u002Fshuttle-hq\u002Fshuttle-docs) 📃 | Documentation hosted on [docs.shuttle.dev](https:\u002F\u002Fdocs.shuttle.dev\u002F). |\n| [www](https:\u002F\u002Fgithub.com\u002Fshuttle-hq\u002Fwww) 🌍 | Our website [shuttle.dev](https:\u002F\u002Fwww.shuttle.dev\u002F), including the [blog](https:\u002F\u002Fwww.shuttle.dev\u002Fblog\u002Ftags\u002Fall) and more. |\n| [deploy-action](https:\u002F\u002Fgithub.com\u002Fshuttle-hq\u002Fdeploy-action) ⚙ | GitHub Action for continuous deployments. |\n| [awesome-shuttle](https:\u002F\u002Fgithub.com\u002Fshuttle-hq\u002Fawesome-shuttle) 🌟 | An awesome list of Shuttle-hosted projects and resources that users can add to. |\n| [shuttlings](https:\u002F\u002Fgithub.com\u002Fshuttle-hq\u002Fshuttlings) ⚔️ | A collection of Rust code challenges. A great way to get started with using Rust and Shuttle. |\n\u003Cbr>\n\u003Cbr>\n\n## Contributing to Shuttle\n\nContributing to Shuttle is highly encouraged!\nEven if you are not planning to submit any code, joining our [Discord server](https:\u002F\u002Fdiscord.gg\u002Fshuttle) and providing feedback helps us a lot!\n\nCheck out our [contributing docs](.\u002FCONTRIBUTING.md) and find the appropriate repo above to contribute to.\nFor development of this repo, check the [development docs](.\u002FDEVELOPING.md).\n\n### Algora Bounties 💰\n\nTo offload work from the engineering team on low-priority issues, we will sometimes add a cash bounty to issues.\nSign up to the [Algora Console](https:\u002F\u002Fconsole.algora.io\u002Forg\u002Fshuttle\u002Fbounties?status=open) to find open issues with bounties.\n\n## Contributors ✨\n\nThanks goes to these wonderful people:\n\n\u003C!-- markdownlint-disable -->\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fshuttle-hq\u002Fshuttle\u002Fgraphs\u002Fcontributors\">\n  \u003Cimg src=\"https:\u002F\u002Fcontrib.rocks\u002Fimage?repo=shuttle-hq\u002Fshuttle\" \u002F>\n\u003C\u002Fa>\n\nMade with [contrib.rocks](https:\u002F\u002Fcontrib.rocks).\n\n\u003C!-- invisible -->\n","shuttle 是一个用于快速构建和部署 Rust 应用的工具，无需编写任何基础设施文件。其核心功能包括一行代码资源分配、快速开发与部署等，极大简化了后端服务的搭建流程。项目基于 Rust 语言开发，支持多种后端服务如数据库等资源的便捷接入。适用于需要高效迭代且希望减少运维负担的小型团队或个人开发者场景中。",2,"2026-06-11 03:04:16","top_language"]