Squeezer Framework - Build event-driven DApps and APis on microservices using AWS Lambda, Azure Functions, Google Functions & more . Serverless !
Clone or download
Latest commit 2f8208b May 23, 2018

README.md

Framework : squeezer.io

Docs : squeezer.io/docs

Chat : chat.squeezer.io

Squeezer.IO Build Status npm version Join the chat at https://gitter.im/SqueezerIO/squeezer DUB

Contents

What is Squeezer ?

Squeezer is a framework designed to help developers to get a better architecture on serverless zero-administration compute platforms where code runs on the top of functions clouds like AWS Lambda , Azure Functions , IBM OpenWhisk & Google Functions

Blockchain Connector

Agnostic blockchain connector

The main scope of the connector is to unify all the current blockchains data assets into a single normalized API interface , therefore you can build blockchain apps easily without digging into all blockchain infrastructure & genesis. The quickest integration to send or receive blockchain transactions and trigger smart contracts private/public methods.

How to use the blockchain connector

Features in short

  • Swagger UI API REST documentation support
  • SEO-friendly web apps
  • share components between functions
  • auto-deployable, auto-scalable , no DevOps requirements
  • silent deployments ,no interruption for the current functionality ( really useful on production )
  • access deployed resources credentials (DB user, pass ...) directly from process.env variables
  • one single command to simultaneously deploy all available functions on your project
  • quick intuitive code deployments by using a special mechanism which will deploy only assets, functions and file packages where code changed from the last deployment
  • automatic rollback to the previous working deployment if something goes wrong
  • sequential deployments, wait for the current deployments in progress to finish
  • self-healing functions
  • test your code locally on a simulated functions platform for a faster development cycle
  • separate your environments in multiple stages
  • extend framework functionality with your own "home-made" plugins
  • pay only for the usage ( no monthly subscriptions )
  • competitive pricing ( >= 2$ / 1 million HTTP requests )
  • smart external dependencies inclusion into the compiled function ( node_modules and other project files ) ... just like on any other trivial NodeJS project
  • Webpack integration

Requirements

Squeezer CLI

Squeezer command-line interface

Templates

Create a quick project stub by using templates :

template description
api-nodejs AWS generic API app template.

Plugins

Extend or merge the Squeezer framework functionality with plugins

Plugin Author
Serve Plugin
This plugin enables serving support for local development within the Squeezer Framework.
Nick Chisiu
Swagger Plugin
This plugin enables Swagger API Documentation support within the Squeezer Framework.
Nick Chisiu

Example Projects

Project Name Author Demo
Generic API
Generic API Hello World + Swagger API Docs
Nick Chisiu demo
REST API
REST API using MongoDB + Swagger API Docs
Nick Chisiu demo

Getting started

NOTE: Windows users should enable symlinks in order to avoid unwanted symbolic links errors .

Serve
cmd description
1. npm i squeezer-cli -g Install Squeezer CLI
2. sqz create --project my-first-project --template api-nodejs Create a project
3. cd my-first-project Switch to the project's directory
4. sqz install Install dependencies
4. sqz compile Compile functions
5. sqz serve Development mode
Live compiling
Deploy
cmd description
1. Configure provider & setup credentials
2. sqz compile --cloud --stage dev Compile functions for cloud deployments
3. sqz deploy Deploy your app into the cloud provider

Contributing

See contributing.md for contribution guidelines

Community

Meetups