47

GitHub - SqueezerIO/squeezer: Squeezer Framework - Build serverless dApps

 5 years ago
source link: https://github.com/SqueezerIO/squeezer
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

README.md

readme-introduction.gif

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


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK