Serverless batch computing made simple.
See the code
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 🚀
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.
Overall
Maintained
Code review
npm
Latest release
Releases this year
3,249 followers · starred May 2023
300 followers · starred Sep 2021
1,182 followers · starred May 2019
4,693 followers · starred Dec 2023
Serverless batch computing made simple.
See the code
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 🚀
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.
Overall
Maintained
Code review
npm
Latest release
Releases this year
3,249 followers · starred May 2023
300 followers · starred Sep 2021
1,182 followers · starred May 2019
4,693 followers · starred Dec 2023