{"id":13478772,"url":"https://github.com/anshulrgoyal/rust-web-developer-roadmap","last_synced_at":"2025-04-08T00:38:47.627Z","repository":{"id":37670474,"uuid":"184176820","full_name":"anshulrgoyal/rust-web-developer-roadmap","owner":"anshulrgoyal","description":"Roadmap to becoming a Rust Web Developer in 2022","archived":false,"fork":false,"pushed_at":"2023-04-27T05:13:14.000Z","size":1333,"stargazers_count":1829,"open_issues_count":5,"forks_count":111,"subscribers_count":42,"default_branch":"master","last_synced_at":"2025-03-31T23:36:28.235Z","etag":null,"topics":["backend","roadmap","rust","web"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/anshulrgoyal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-04-30T02:24:42.000Z","updated_at":"2025-03-30T00:45:37.000Z","dependencies_parsed_at":"2024-01-07T12:55:13.072Z","dependency_job_id":"1ae9b52c-d3c0-46f3-be94-34700dd7eed3","html_url":"https://github.com/anshulrgoyal/rust-web-developer-roadmap","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anshulrgoyal%2Frust-web-developer-roadmap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anshulrgoyal%2Frust-web-developer-roadmap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anshulrgoyal%2Frust-web-developer-roadmap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anshulrgoyal%2Frust-web-developer-roadmap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/anshulrgoyal","download_url":"https://codeload.github.com/anshulrgoyal/rust-web-developer-roadmap/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247755560,"owners_count":20990620,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["backend","roadmap","rust","web"],"created_at":"2024-07-31T16:02:02.639Z","updated_at":"2025-04-08T00:38:47.607Z","avatar_url":"https://github.com/anshulrgoyal.png","language":"Rust","readme":"# Rust Web Developer Roadmap\n\n\u003e Roadmap to becoming a [Rust](https://www.rust-lang.org/) web developer in 2022:\n\nBelow you can find a chart demonstrating the path you may take and the libraries you may require to become a Rust Web Developer. This chart is made with inspiration from [Golang Developer Roadmap](https://github.com/Alikhll/golang-developer-roadmap/).\n\n[简体中文版](./i18n/zh-CN/README-zh-CN.md)\n\n## Disclaimer\n\n\u003e The purpose of this roadmap is to help beginner Rust web developers to navigate through frameworks and libraries in Rust ecosystem while staying as productive as possible. The libraries and (my personal) recommendations listed under each stage of the following roadmap has been researched to the best of my capacity. You should always do research on your end and build up a solution that best works for you.\n\n## Roadmap\n\n![Roadmap](./rust-web-developer-roadmap.png)\n\n## Resources\n\n1. Prerequisites\n\n   - [Rust](https://www.rust-lang.org/)\n   - [The Book](https://doc.rust-lang.org/book/)\n   - [Rustlings Course](https://github.com/rust-lang/rustlings/)\n   - [Rust by Example](https://doc.rust-lang.org/stable/rust-by-example/)\n   - [Async Programming](https://rust-lang.github.io/async-book/)\n   - [Rustup](https://www.rust-lang.org/tools/install)\n   - [Cargo Book](https://doc.rust-lang.org/cargo/index.html)\n   - [Crates.io](https://crates.io/)\n\n2. CLI\n\n   - [clap](https://crates.io/crates/clap)\n   - [structopt](https://crates.io/crates/structopt)\n   - [argh](https://crates.io/crates/argh)\n\n3. Web Frameworks\n\n   - [actix-web](https://crates.io/crates/actix-web)\n   - [gotham](https://crates.io/crates/gotham)\n   - [nickel](https://crates.io/crates/nickel)\n   - [rocket](https://crates.io/crates/rocket)\n   - [tide](https://crates.io/crates/tide)\n   - [axum](https://crates.io/crates/axum)\n   - [warp](https://crates.io/crates/warp)\n\n4. ORM\n\n   - [diesel](https://crates.io/crates/diesel)\n   - [rustorm](https://crates.io/crates/rustorm)\n\n5. Caching\n\n   - [redis](https://crates.io/crates/redis)\n   - [sled](https://crates.io/crates/sled)\n\n6. Logging\n\n   - [log](https://crates.io/crates/log)\n   - [env_logger](https://crates.io/crates/env_logger)\n   - [flexi_logger](https://crates.io/crates/flexi_logger)\n   - [slog](https://crates.io/crates/slog)\n   - [fern](https://crates.io/crates/fern)\n   - [log4rs](https://crates.io/crates/log4rs)\n   - [sentry](https://crates.io/crates/sentry)\n\n7. GRPC Frameworks\n\n   - [grpc](https://crates.io/crates/grpc)\n   - [grpcio](https://crates.io/crates/grpcio)\n   - [tonic](https://crates.io/crates/tonic)\n\n8. JSON-RPC Framework\n\n   - [jsonrpc-core](https://crates.io/crates/jsonrpc-core)\n\n9. GraphQL Framework\n\n   - [juniper](https://crates.io/crates/juniper)\n\n10. HTTP Clients\n\n    - [reqwest](https://crates.io/crates/reqwest)\n    - [curl](https://crates.io/crates/curl)\n\n11. Testing\n\n    - _[Inbuilt](https://doc.rust-lang.org/book/ch11-00-testing.html)_\n\n12. Task Scheduling\n\n    - [clokwerk](https://crates.io/crates/clokwerk)\n    - [delay-timer](https://crates.io/crates/delay_timer)\n\n13. Frontend Development\n\n    - [yew](https://crates.io/crates/yew)\n    - [wasm-bindgen](https://crates.io/crates/wasm-bindgen)\n    - [js-sys](https://crates.io/crates/js-sys)\n    - [web-sys](https://crates.io/crates/web-sys)\n    - [gloo](https://crates.io/crates/gloo)\n\n14. Good to know crates\n    - [validator](https://crates.io/crates/validator)\n    - [serde](https://crates.io/crates/serde)\n    - [r2d2](https://crates.io/crates/r2d2)\n    - [lettre](https://crates.io/crates/lettre)\n\n15. Additional Rust Content\n    - [Rust in 30 min](https://fasterthanli.me/articles/a-half-hour-to-learn-rust)\n\n## Wrap Up\n\nIf you think the roadmap can be improved, please do open a PR with any updates and submit any issues.\n\n## Contribution\n\nThe roadmap is built using [Draw.io](https://www.draw.io/). Project file can be found at `rust-web-developer-roadmap.xml` file. To modify it, open draw.io, click **Open Existing Diagram** and choose `xml` file with project. It will open the roadmap for you. Update it, upload and update the images in readme and create a PR (export as png with 50px border width and minify that with [Compressor.io](https://compressor.io/compress)).\n\n- Open a pull request with improvements\n- Discuss ideas in issues\n- Spread the word\n\n## License\n\n[![License: CC BY-NC-SA 4.0](https://img.shields.io/badge/License-CC%20BY--NC--SA%204.0-lightgrey.svg)](https://creativecommons.org/licenses/by-nc-sa/4.0/)\n","funding_links":[],"categories":["Rust","书籍/教程/文档","🗺️ Roadmaps.","资源","Programming Language"],"sub_categories":["路线图"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanshulrgoyal%2Frust-web-developer-roadmap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanshulrgoyal%2Frust-web-developer-roadmap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanshulrgoyal%2Frust-web-developer-roadmap/lists"}