We are in BETA! Deploy Rust functions as services for FREE during the beta period. Those functions will always be free to users. However, there is a rate limit for free users (~ several requests / user / min).
Demo spotlights
Internet of functions
Connect a chain of functions into an application using webhooks
Image Classification
Use Tensorflow-based MobileNet models to classify objects in an input image.
WebAssembly-based FaaS
WebAssembly is an efficient and safe software runtime. It is more performant than traditional language VMs (e.g., JavaScript, Python, or Java), and safer and more portable than native code.
The Second State Functions is based on the Second State WebAssembly VM (SSVM). It is specifically optimized for server-side applications. Key use cases include media processing, big data analytics, and edge AI.
Learn more PerformanceLive Demos
Static web page with FaaS functions as backend services. No servers to setup!
Hello world
- The simplest FaaS example. The function adds "hello" to any string name the caller gives.
Watermark an image
- Adds a fixed watermark to an input image. Demonstrates binary-based function I/O.
Custom watermark
- Adds a custom watermark to an image. Demonstrates a multi-part HTTP post as function arguments.
Send email
- Sends email messages via the sendgrid API. Demonstrates the use of the http_proxy command in Rust functions.
Image classification
- Uses the MobileNet Tensorflow model to classify an input image. Demonstrates the mobilenet_v2 command in Rust functions.
Face detection
- Uses the MTCNN Tensorflow model to detect faces in an image and to draw boxes around those faces.
Tutorials and documentation
Say "hello world" with the Second State Functions. With JSON support, your Rust function can take any data as arguments, and return any data.
Rust functions in the Functions can take binary data as input arguments and return value. This is ideal for applications such as image and video processing.
The Rust functions can also take a combination of text or JSON strings, byte arrays, and web content behind URLs, as input arguments.
Rust functions in the Functions can take web-based content as input arguments, and send the return value to another web service. That creates chains of services.
Second State Functions supports a http_proxy
API to access internet resources. You can access this API in your Rust function code.
The Second State Functions supports a WASI-like API for running tensorflow models. That allows fast & safe AI operations from WebAssembly.
Create and deploy a Rust function to classify pictures using MobileNet trained Tensorflow models.
Create a Rust function to detect and highlight human faces from a picture using a Tensorflow model.