Cloudflare
<h1 align="center"> ⛅️ wrangler </h1> <section align="center" id="shieldio-badges"> <a href="https://www.npmjs.com/package/wrangler"><img alt="npm" src="https://img.shields.io/npm/dw/wrangler?style=flat-square"></a> <img alt="GitHub contributors" src="https://img.shields.io/github/contributors/cloudflare/workers-sdk?style=flat-square"> <img alt="GitHub commit activity (branch)" src="https://img.shields.io/github/commit-activity/w/cloudflare/workers-sdk/main?style=flat-square"> <a href="https://discord.cloudflare.com"><img alt="Discord" src="https://img.shields.io/discord/595317990191398933?color=%23F48120&style=flat-square"></a> </section>
wrangler is a command line tool for building Cloudflare Workers.
Quick Start
To get started quickly with a Hello World worker, run the command below:
npx wrangler init my-worker -yFor more info, visit our Getting Started guide.
<details><summary>Wrangler System Requirements</summary>
We support running the Wrangler CLI with the Current, Active, and Maintenance versions of Node.js. Your Worker will always be executed in workerd, the open source Cloudflare Workers runtime.
Wrangler is only supported on macOS 13.5+, Windows 11, and Linux distros that support glib 2.35. This follows workerd's OS support policy.
</details>
Documentation
For the latest Wrangler documentation, click here.
To read more about Workers in general:
Configuration
Wrangler is configured via a wrangler.toml or wrangler.json file in the project root. An example configuration generated by npx wrangler init or npx create cloudflare is as follows:
name = "my-worker"
main = "./src/index.ts"
compatibility_date = "YYYY-MM-DD"For more detailed information about configuration, refer to the documentation.
Commands
Workers
wrangler dev
Start a local development server, with live reloading and devtools.
wrangler deploy
Publish the given script to Cloudflare's global network.
For more commands and options, refer to the documentation.
Pages
wrangler pages dev [directory]
Serves a static build asset directory.
Builds and runs functions from a ./functions directory or uses a _worker.js file inside the static build asset directory.
For more commands and options, refer to the documentation or run wrangler pages dev --help.
Key Actionable Steps or Processes Described in the Article:
Access FastRTC and Cloudflare Services:
- Obtain a Hugging Face Access Token which provides 10GB of free data streaming per month.
Setup FastRTC and Cloudflare Integration:
- Ensure you have the appropriate version of FastRTC (version 0.0.20 or above).
- Install or upgrade FastRTC using Python:
bash pip install --upgrade 'fastrtc[vad]'
Configure for Global TURN Network:
- Use the Cloudflare TURN network by fetching credentials in your script:
python from fastrtc import ReplyOnPause, Stream, get_cloudflare_turn_credentials import os os.environ["HF_TOKEN"] = "<your-hf-token>"
- Use the Cloudflare TURN network by fetching credentials in your script:
Develop and Deploy Your Application:
- Implement the streaming logic in your application, for example using an echo function for audio processing.
- Launch your application script with Python, making use of the Cloudflare-managed service for scalability.
Resources for Additional Support:
- Refer to the specified collections and the FastRTC Cookbook on Hugging Face for more implementation examples and detailed guidance.