26
Merging JS frontend & backend Shubhra Kar | Director – Products twitter:@shubhrakar mail:[email protected]

Connect js nodejs_api_shubhra

Embed Size (px)

DESCRIPTION

Building Node.js based APIs in minutes. Achieve full-stack JavaScript, Offline Sync, Geolocation, REST API / JSON, ORM and API Management in open source. Write your own connectors, work on express.js. Create MEAN stack applications connecting Angular to Node to MongoDB. Presented at the Connect.js conference in Atlanta

Citation preview

Page 1: Connect js nodejs_api_shubhra

Merging JS frontend & backend

Shubhra Kar | Director – Productstwitter:@shubhrakar mail:[email protected]

Page 2: Connect js nodejs_api_shubhra

The Frontend is changing fast (Mobile First !)

Page 3: Connect js nodejs_api_shubhra

And it isn’t even begun yet !

Page 4: Connect js nodejs_api_shubhra

4

APIs are powering this change

SaaS Mobile IoT

SOA

Web

App Server

Database Datacube

API Server

HTML JSON

Page 5: Connect js nodejs_api_shubhra

OK…But how do I cross the legacy bridge ?

<SO

AP/X

ML/H

TTP> <PS

UED

O R

EST>

<JSO

N A

PI>

Page 6: Connect js nodejs_api_shubhra

Distinctly unique Approaches to solve the same problem

Let’s just RESTify our

current SOA to solve this

Architect Developer

Page 7: Connect js nodejs_api_shubhra

7

What backend is being used for APIs ?

Node is FAST

Node is perfect for APIs

Node powers full-stack JS

…and highly concurrent!

Page 8: Connect js nodejs_api_shubhra

Look IoT…Threads

Don’t Wait !

Page 9: Connect js nodejs_api_shubhra

But what exactly is full stack

Page 10: Connect js nodejs_api_shubhra

Full Stack JavaScript is powering mobility

AngularBootstrap

Ionic

Cordova

A Compelling Option for Enterprise Mobility Faster time to market vs. 100% native

development Reuse skills of existing web developer staff Open Source stack / no vendor lock-in For Enterprise apps, performance is comparable

to native apps Near “write once, run anywhere” UI: tablets,

phones, smart TVs, smart watches, cars, etc.

Gartner predicts by 2016 more than 50% of the apps deployed will be

Hybrid apps.

http://www.gartner.com/newsroom/id/2324917

LoopBackAPI ServerNode.js

Page 11: Connect js nodejs_api_shubhra

But is the backend really being written in JS ?

• Node.js active contributors (>65K)• Very large and active developer community• Growing / most modules (100K > Java, Ruby, PHP…)

Page 12: Connect js nodejs_api_shubhra

The emergence of the API economy

Compilers

AppServer

PaaSmBaaS

API Server

Speed of Development

Cost, Control, Data

Page 13: Connect js nodejs_api_shubhra

RESTAPI

PUSH

GEOOFF

SYNC

DEVICE

USER FILE

Storage

REST

APIGATEWAY

Channel SDKs

ORMAPI ENGINE

CONNECTORs

API

SDKs

So some developers wrote an Open source API server

REST API

APIExplorer

Debugging, Provisioning, Scaling, Monitoring

Page 14: Connect js nodejs_api_shubhra

These guys sent me !

Bert Belder

Ben Noordhuis

Node Core

RaymondFeng

Ritchie Martori

LoopBack / Express Core

SamRoberts

Miroslav Bajtos

Ryan Graham

Page 15: Connect js nodejs_api_shubhra

So how can you contribute ?

http://loopback.iohttp://expressjs.com

Community contributions till date

Page 16: Connect js nodejs_api_shubhra

Loopback Open-source Node.js Framework

$ slc loopback

_-----_ | | .--------------------------. |--(o)--| | Let's create a LoopBack | `---------´ | application! | ( _´U`_ ) '--------------------------' /___A___\ | ~ | __'.___.'__ ´ ` |° ´ Y `

[?] Enter a directory name where to create the project: (.)

Middleware API Engine

ORM

Aggregation & Mashups

API Explorer (Swagger)

Fine Grained Access Control (ACLs)

Data Replication

IsoMorphic JS and Client SDKs.

Page 17: Connect js nodejs_api_shubhra

Hail Isomorphic JS

JSclient

JSServer

Remoting

JSclient

Page 18: Connect js nodejs_api_shubhra

Open Source API Explorer (Swagger 2.0)

Page 19: Connect js nodejs_api_shubhra

Open Source Studio

Visual ORM

Discovery

Migration

DEV - API Design & Composition

OPS – Provisioning, Scaling & Monitoring

Page 20: Connect js nodejs_api_shubhra

Open Source mBaaS (mobile Backend as a Service)

Push Notification

GeoLocation

Offline Sync

3rd Party APIs

Device / User Tracking

Cloud / File Storage

Page 21: Connect js nodejs_api_shubhra

Open Source API Gateway

Security (AAA)

Mediation and Transformation

Infrastructure QoS (pagination, throttling, caching, delivery guarantee, firewall)

Analytics and health monitoring

Aggregation and Microservices Routing

Virtualization and Reverse Proxy

Page 22: Connect js nodejs_api_shubhra

Connectors

Connection Management

RDBMS, NoSQL, Services, BigData, Proprietary

Model Discovery

Data Replication

State Management

Storage

Open Source

Enterprise

Storage

REST

Page 23: Connect js nodejs_api_shubhra

Open Source Controller …we talked yesterday !

Debugging

Build Universal Git

Deploy Server Distro Distributed – Mesh

Scale

State Management

Page 24: Connect js nodejs_api_shubhra

That’s how we win.

The Boss

hehe…I am an API Hipster and a Nodie now !

Page 25: Connect js nodejs_api_shubhra

Nodies are not just silicon valley hipsters !

And most recently….#1 Retailer

Page 26: Connect js nodejs_api_shubhra

First there was Node

Thank you!

JUST WIN,BABY!