{"id":18276381,"url":"https://github.com/matanlurey/wasm-compute","last_synced_at":"2026-05-20T14:32:48.445Z","repository":{"id":234012228,"uuid":"788169408","full_name":"matanlurey/wasm-compute","owner":"matanlurey","description":"Learning about WASM+Serverless","archived":false,"fork":false,"pushed_at":"2024-04-19T17:00:31.000Z","size":29,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-19T20:04:20.865Z","etag":null,"topics":["fastly","serverless","wasi","wasm"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/matanlurey.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-17T22:57:23.000Z","updated_at":"2024-04-18T22:20:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"86c46f54-9641-47fc-934d-dfa5c619ab34","html_url":"https://github.com/matanlurey/wasm-compute","commit_stats":null,"previous_names":["matanlurey/wasm-compute"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/matanlurey/wasm-compute","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matanlurey%2Fwasm-compute","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matanlurey%2Fwasm-compute/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matanlurey%2Fwasm-compute/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matanlurey%2Fwasm-compute/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/matanlurey","download_url":"https://codeload.github.com/matanlurey/wasm-compute/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matanlurey%2Fwasm-compute/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265492786,"owners_count":23776117,"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":["fastly","serverless","wasi","wasm"],"created_at":"2024-11-05T12:15:54.726Z","updated_at":"2026-05-20T14:32:43.420Z","avatar_url":"https://github.com/matanlurey.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Fastly\n\nTo learn more about and experince [Fastly][], particularly their\n[Compute][wasm-compute] platform.\n\n[fastly]: https://www.fastly.com/\n[wasm-compute]: https://www.fastly.com/products/compute\n\n[![ci](https://github.com/matanlurey/wasm-compute/actions/workflows/rust.yaml/badge.svg)](https://github.com/matanlurey/wasm-compute/actions/workflows/rust.yaml)\n[![deploy](https://github.com/matanlurey/wasm-compute/actions/workflows/deploy.yaml/badge.svg)](https://github.com/matanlurey/wasm-compute/actions/workflows/deploy.yaml)\n\n\u003c!--\nEmoji reference area.\n\nGreen circle:  🟢\nYellow circle: 🟡\nRed circle:    🔴\n--\u003e\n\n## Requirements\n\nThis repository was only setup and tested on an ARM64 Mac running macOS Sonoma (14.3).\n\nInstall [homebrew](https://brew.sh/), and then run:\n\n```shell\nbrew bundle install\nrustup-init\nrustup target add wasm32-wasi\ncargo install viceroy\n```\n\nIf this is your first time using Fastly, you will need to [create an account](https://www.fastly.com/signup/).\n\n## Examples\n\n- [Hello Fastly](examples/hello-fastly/README.md), a Rust+WASM+Compute example.\n\n## Resources\n\nLinks to external resources about Fastly and WebAssembly.\n\n- [Fastly can teach you about the Wasm future in just 6 talks](https://www.fastly.com/blog/fastly-can-teach-you-about-the-wasm-future-in-just-6-talks)\n- [Fastly labs](https://www.fastly.com/documentation/developers/labs/) and specifically, [Starter kits in Rust](https://www.fastly.com/documentation/solutions/starters/rust/)\n- [GitHub Actions for Compute](https://github.com/fastly/compute-actions)\n- [Wasmtime: A secure and fast runtime for WebAssembly](https://wasmtime.dev/)\n- [Key Value Stores | Fastly](https://www.fastly.com/products/kv-store)\n- [Unofficial SDKs on the Compute Platform](https://www.fastly.com/documentation/guides/compute/custom/)\n\n## Notes\n\nMy own notes on Fastly and WebAssembly with links to primary sources.\n\n- 🟢 [What is a WebAssembly Component (And Why)](notes/what-is-a-webassembly-component.md)\n- 🔴 [Javascript Toolchain for WebAssembly Components](notes/js-toolchain-for-wasm-components.md)\n- 🔴 [The WASI OS - Isolation with Communication, Wasm style](notes/wasi-os-isolation-with-communication.md)\n- 🔴 [Security and Correctness in Wasmtime](notes/security-and-correctness-in-wasmtime.md)\n- 🔴 [Machine Learning in Fastly's Compute](notes/machine-learning-fastly-compute.md)\n\n### Frictions\n\nThere were some friction points I encountered while setting up this repository.\n\n- Difficult to understand pricing and limits for Compute, _\"Call Sales\"_?\n\n- When I signed up for an account I interpreted the required field \"company\"\n  accidentally as _employer_, and it loosk like I'll have to contact support to\n  change it (as I get an _Invalid request_ error when trying to update it).\n\n- There are [API tokens](https://manage.fastly.com/account/personal/tokens)\n  created called `manage.fastly.com browser session` that I never created, and\n  I'm not sure if they are safe to delete or what they are for.\n\n- When using `fastly profile create`, and I'm asked for an API key, the prompt\n  says _Fastly API token:_, but the input is hidden, so it was hard to know if\n  I was copy-pasting the correct value or not\n  (\u003chttps://github.com/fastly/cli/issues/1184\u003e).\n\n- I eventually created one, but it was _wrong_ beacuse I created a\n  \"Read only token\" (\u003chttps://github.com/fastly/cli/issues/1185\u003e).\n\n- When I tried creating a _global_ token, I got an error: _You must POST /sudo\n  to access this endpoint_. Eventually it worked several minutes later.\n\n- I enabled 2-factor authentication, but I noticed when I need sudo-level\n  permissions (like creating a token), the second prompt (for the sudo-level)\n  doesn't work if the 2FA code is still the same one that was used for the first\n  prompt (I have to wait for a new code to be generated).\n\n- Custom workflows don't support project directories\n  (\u003chttps://github.com/fastly/compute-actions/issues/49\u003e)\n\n- I get a mysterious \"provided viceroy_version() is not a valid semver\" error\n  on CI (\u003chttps://github.com/fastly/compute-actions/issues/50\u003e).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatanlurey%2Fwasm-compute","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatanlurey%2Fwasm-compute","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatanlurey%2Fwasm-compute/lists"}