Skip to content

Instantly share code, notes, and snippets.

@Xe
Last active December 13, 2019 15:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Xe/f3fc1e77585034d0a14becc10cc06e75 to your computer and use it in GitHub Desktop.
Save Xe/f3fc1e77585034d0a14becc10cc06e75 to your computer and use it in GitHub Desktop.
wasmcloud

wasmcloud TODO

Everything here is taken from the issues list.

Big Ticket Items

  • Explain wasmcloud
    • What it is
    • Who the intended users are
    • What benefit it gives
  • Implement queue creation
    • Use NATS as the backend for now
    • Some kind of cold storage subscriber that pushes messages to disk
    • Export queue data
  • Implement job running
    • Expose in wasmcloud cli tool
  • wasm module cold storage
    • Retain old modules somehow?
  • Isolated worker docker image
  • Implement handlers
    • Configuration via envvars
    • Limit access to the outside world
    • Brand HTTP requests with an X-Wasmcloud-Customer: $USERNAME header and a X-Wasmcloud-Abuse-Report: https://whatever header
  • Implement code updates
  • Choose if I want to back this on Kubernetes or not
  • OAuth2 support with Patreon
    • For now limit queue/handler support to patrons

Documentation

  • Philosophy
    • Less is more
    • Cloud resources should appear as native ones
    • If something seems hard or impossible to do today, report it so it can be done tomorrow
  • Getting started with
    • Rust
    • TinyGo
    • Zig
  • In-depth explanation of CommonWA API
    • Philosophy
      • Cloud-native
      • "local" resources don't have to actually be local
    • namespaces
      • env
      • io
      • log
      • random
      • resources
      • runtime
      • startup
      • time
    • schemes
      • file (redis-backed)
      • handler (calls other handlers)
      • http
      • random (cryptographically random data)
      • ws/wss (websockets)
  • Usage of wasmcloud site
    • Register account
    • Login
    • Logout
    • Control panel
    • View/Edit/Delete
    • Export data
  • Usage of wasmcloud command line tool
    • login
    • local emulation
    • CRUD of streams/handlers
  • Usage of wasmcloud API
  • Optimization tips
    • Use release binaries
    • Test with -vm-stats
    • Avoid blocking syscalls when you can
  • How this all works at a stupidly low level
    • CommonWA bindings
    • Queue processing
    • Policy application
    • Deployment
    • Rate limiting
    • Metrics
      • Usage tracking
  • Appendices
    • The Gears and The Gods
    • Online resources that may help
    • Specifications
  • eBook file distribution
    • ePub version
    • PDF version
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment