1.1.14 • Published 7 years ago

squeezer-metabaron v1.1.14

Weekly downloads
5
License
MIT
Repository
github
Last release
7 years ago

Squeezer Intro

Watch video

Framework : squeezer.io

Docs : docs.squeezer.io

Chat : chat.squeezer.io

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

Quick Getting Started

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 microservices clouds like AWS Lambda , Azure Functions , IBM OpenWhisk & Google Functions

Features in short

  • Swagger UI API REST documentation support
  • SEO-friendly web apps with the PUG support ( formerly known as JADE ) + your favorite JS framework + CDN integrated support for project's assets (js, images, css, ...)
  • share components between microservices
  • 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 microservices 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 microservices
  • test your code locally on a simulated microservices 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 microservice ( node_modules and other project files ) ... just like on any other trivial NodeJS project
  • Babel ES6/ES7 + Webpack 2 integration

Requirements

Squeezer CLI

Squeezer command-line interface

Templates

Create a quick project stub by using templates :

templatedescription
aws-api-nodejsAWS generic API app template.
aws-web-nodejsAWS generic WEB app template.
azure-api-nodejsAzure generic API app template.
azure-web-nodejsAzure generic WEB app template.

Plugins

Extend or merge the Squeezer framework functionality with plugins

PluginAuthor
AWS Plugin This plugin enables AWS Lambda support within the Squeezer Framework.Nick Chisiu
Azure Plugin This plugin enables Azure Functions support within the Squeezer Framework.Nick Chisiu
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 NameAuthorDemo
AWS Generic API Project AWS generic API Hello World projects using Swagger API DocsNick Chisiudemo
AWS Generic WEB Project AWS NodeJS WebApp template + Pug ( ex-Jade ) + ReactJS support + Material UI + Bootstrap 3 stylingNick Chisiudemo
AWS REST API Project AWS NodeJS REST API template + DynamoDB + Swagger supportNick Chisiudemo
Azure Generic API Project Azure generic API Hello World projects using Swagger API DocsNick Chisiudemo
Azure Generic WEB Project Azure NodeJS WebApp template + Pug ( ex-Jade ) + ReactJS support + Material UI + Bootstrap 3 stylingNick Chisiudemo
Azure REST API Project Azure NodeJS REST API template + Azure SQL + Swagger supportNick Chisiudemo

Getting started

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

Run

cmddescription
1.npm install -g squeezer-cliInstall Squeezer CLI
2.sqz create --project my-first-project --template aws-api-nodejs --email you@example.orgCreate a project
3.cd my-first-projectSwitch to the project's directory
4.Configure credentialsCloud credentials
5.sqz installInstall project's required packages
5.sqz compileCompile project's microservices
7.sqz serveDevelopment modeNOTE : Live reload enabled by default

Deploy

cmddescription
1.sqz compile --cloudCompile microservices for cloud deployments
2.sqz deploy --stage devDeploy your app into the cloud providerNote: initial deployments can take longer <= 40 mins

Contributing

See contributing.md for contribution guidelines

Community