Supported crates
Last updated Apr 23, 2026
Background
Learn about popular Rust crates which have been confirmed to work on Workers when using workers-rs ↗︎ (or in some cases just wasm-bindgen), to write Workers in WebAssembly. Each Rust crate example includes any custom configuration that is required.
This is not an exhaustive list, many Rust crates can be compiled to the wasm32-unknown-unknown ↗︎ target that is supported by Workers. In some cases, this may require disabling default features or enabling a Wasm-specific feature. It is important to consider the addition of new dependencies, as this can significantly increase the size of your Worker.
time
Many crates which have been made Wasm-friendly, will use the time crate instead of std::time. For the time crate to work in Wasm, the wasm-bindgen feature must be enabled to obtain timing information from JavaScript.
tracing
Tracing can be enabled by using the tracing-web crate and the time feature for tracing-subscriber. Due to timing limitations on Workers, spans will have identical start and end times unless they encompass I/O.
Refer to the tracing example ↗︎ for more information.
reqwest
The reqwest library ↗︎ can be compiled to Wasm, and hooks into the JavaScript fetch API automatically using wasm-bindgen.
tokio-postgres
tokio-postgres can be compiled to Wasm. It must be configured to use a Socket from workers-rs:
Refer to the tokio-postgres example ↗︎ for more information.
hyper
The hyper crate contains two HTTP clients, the lower-level conn module and the higher-level Client. The conn module can be used with Workers Socket, however Client requires timing dependencies which are not yet Wasm friendly.
Refer to the hyper example ↗︎ for more information.
Was this helpful?
YesNo
On this page
{"@context":"https://schema.org","@type":"TechArticle","@id":"https://developers.cloudflare.com/workers/languages/rust/crates/#page","headline":"Supported crates","description":"Popular Rust crates confirmed to compile to WebAssembly and run on Cloudflare Workers.","url":"https://developers.cloudflare.com/workers/languages/rust/crates/","inLanguage":"en","image":"https://developers.cloudflare.com/workers/languages/rust/crates/og.png?v=ebfe7809f4e7a8d4","dateModified":"2026-04-23","publisher":{"@type":"Organization","name":"Cloudflare","description":"One platform for your apps, agents, and workforce. Build, secure, and scale without managing infrastructure","url":"https://www.cloudflare.com/","sameAs":["https://github.com/cloudflare","https://www.linkedin.com/company/cloudflare","https://x.com/cloudflare"],"logo":{"@type":"ImageObject","url":"https://developers.cloudflare.com/logo.svg"},"address":{"@type":"PostalAddress","streetAddress":"101 Townsend St","addressLocality":"San Francisco","addressRegion":"CA","postalCode":"94107","addressCountry":"US"},"contactPoint":[{"@type":"ContactPoint","contactType":"Customer Support","url":"https://support.cloudflare.com/","availableLanguage":["English"]},{"@type":"ContactPoint","contactType":"Sales","url":"https://www.cloudflare.com/contact/","availableLanguage":["English"]}]},"isPartOf":{"@type":"WebSite","@id":"https://developers.cloudflare.com/#website","name":"Cloudflare Docs","url":"https://developers.cloudflare.com/"}}
description: Use TypeScript with fully typed APIs to build Cloudflare Workers. title: TypeScript image: https://developers.cloudflare.com/workers/languages/typescript/og.png?v=4357577e18058c65
Documentation Index
Fetch the complete documentation index at: https://developers.cloudflare.com/workers/llms.txt
Use this file to discover all available pages before exploring further.
Docs