StdLib Updates: Node 8.0.0 Platform Support, new “FaaSlang” Function Definitions

Keith Horwood
Jun 7, 2017 · 3 min read

Hey everyone, the StdLib team is here with some exciting updates on the development of the platform! We’re excited to announce that StdLib now supports Node 8.0.0 natively, along with all associated goodies (like async / await), and we’ve launched a new way to build functions-as-services called FaaSlang (function-as-a-service language).

If you haven’t heard about StdLib, the easiest way to describe us is a Package Manager for APIs, where you can turn a simple JavaScript function into an infinitely scalable backend API with versioning, rate limiting, etc. in a single command. Chris Nicola of Wealthbar has graciously pointed out, you can think of StdLib like, “Heroku for serverless microservices.”

Building and deploying is simple from the command line using the Command Line Tools:

New: Node 8 Support and FaaSlang

A few weeks ago at ServerlessConf in Austin TX, we somewhat silently rolled out FaaSlang (function-as-a-service language) our open server-less API deployment and gateway specification, in a short 15-minute talk, which is available here. This specification details how we expect server-less functions to be written and consumed (including things like built-in type-checking for API requests) and that the onus for maintenance should fall on infrastructure managers (devops, your stack, or your provider) and not the developer running a deployment toolchain.

You can find FaaSlang on github at https://github.com/faaslang/faaslang.

FaaSlang includes a specification for async server-less functions that look like this:

Or like this:

And turn them into a scalable API endpoint that can be called like this from our Node.js SDK:

You’ll notice some magic context and callback parameters, the former provides execution context details and needn’t be documented (but must always be the last argument when included), and that latter is required when deploying non-async functions.

A shortlist of goodies available via FaaSlang services:

  • automatically enforced documentation
  • automatically generated docs JSON blobs (+ pages, if on StdLib)
  • type-checking corresponding to superset of JSON (includes integers)
  • fullasync / await support, as shipped around Node 8

You can view the full FaaSlang specification on GitHub at faaslang/faaslang — it’s open, fully-tested, and not opinionated as to service provider (can build it around your own AWS Lambda functions), but the easiest way to get started is to sign up on StdLib and use our CLI, available on GitHub.

Happy Building!

This is just the start of the new version of the StdLib platform, and we’ll be announcing a number of exciting changes around the company in the coming weeks. Stay tuned as we roll out updates and announcements — either on our website, stdlib.com, or via Twitter, @StdLibHQ.

We’re very thankful to have been included at ServerlessConf in Austin, PolyglotConf in Vancouver, and be sure not to miss us at upcoming speaking arrangements: VueConf in Poland and Confront in Malmo — we’d love to see you around!


Standard Library

Standard Library Development Blog

Keith Horwood

Written by

Solving problems since 1988.

Standard Library

Standard Library Development Blog

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade