microlambda

Microlambda is an opinionated framework that allows you to manage large serverless projects on AWS Lambda, written in TypeScript.

MIT License

Downloads
4.2K
Stars
3
Committers
7

Is an opinionated framework that simplifies development of AWS serverless microservices project using typescript.

Sponsors

User documentation

A complete user guide is available on our official website

Developer documentation

The project is maintained as a monorepo (using yarn workspaces) and contains the following packages:

  • @microlambda/core Core package that contains all low-level logic to run microlambda projects.
  • @microlambda/cli A command line interface that provides tooling to generate, run, test and deploy projects.
  • @microlambda/generator A command line interface that provides tooling to generate, run, test and deploy projects.
  • @microlambda/client The web UI to monitor and interact with the microservices during local runs.
  • @microlambda/server The WebSocket server that send data to client and handle its requests for local run UI.
  • @microlambda/handling Helpers that automates repetitive tasks such as CORS configuration, build responses.
  • @microlambda/testing Tests helpers for easy unit and functional tests setup.
  • @microlambda/plugin Serverless framework plugin that enable custom domain creation and multi-regions deployments.
  • @microlambda/docs Project documentation website. Powered by docusaurus.

Project first build

# Clone this repository
git clone [email protected]:microlambda/microlambda.git

# Install dependencies
yarn

# Mila is designed to build itself, to do so, build mila-runner
yarn build:runner

# Once the runner is built, use it to build the entire project
yarn build --watch

To perform tests, fork the mila-starter or use one of your microlambda project.

Update your package.json to use yarn link: special protocol and use your local version of mila and run yarn install.

{
  "dependencies": {
    "@microlambda/cli": "link:/path/to/your/clone/microlambda/cli",
    "serverless-microlambda": "link:/path/to/your/clone/microlambda/plugin"
  }
}

With this setup, you are using a local version of microlambda which is rebuilt with build --watch on another shell.

When you edit microlambda, changes are immediately available on your test project.

You have a proper DX to fix a bug or develop a new feature 📐

Package Rankings
Top 8.76% on Npmjs.org
Related Projects