Faast.js makes regular functions callable as serverless functions on AWS Lambda. It handles the details of uploading your code, creating cloud infrastructure, and cleaning up. Scale up your functions to a thousand cores in seconds :rocket:
Faast.js is a pure library with no service dependencies, operational overhead, or unnecessary complexity.
Faast.js requires node version 8+.
$ npm install faastjs
First write the functions you want to run in a serverless function. Make sure to export them:
// functions.ts
export function hello(name: string) {
return "hello " + name;
}
Use faast.js to turn this into a serverless function:
// main.ts
import { faast } from "faastjs";
import * as funcs from "./functions";
(async () => {
const m = await faast("aws", funcs);
const { hello } = m.functions;
const result = await hello("world!");
console.log(result);
await m.cleanup();
})();
Make 1000 concurrent calls if you like:
const promises: string[] = [];
for (let i = 0; i < 1000; i++) {
promises.push(hello(`world ${i}!`));
}
await Promise.all(promises);
How much did that cost...?
const cost = await m.costSnapshot();
console.log(`$${cost.total()}`);
Relax. It's just half a penny:
$0.00420858
Check out our getting started documentation.
Work through some examples
Review the detailed API documentation.
Join our discord channel.
Follow us on twitter.
See contributing.