Slide 1

Slide 1 text

Modern Web APIs with Node.js & TypeScript FrankenJS Manuel Rauber @manuelrauber Software Architect

Slide 2

Slide 2 text

The guy who’s talkin’ Software Architect @ Thinktecture AG ! [email protected] " @manuelrauber # https://manuel-rauber.com Manuel Rauber FrankenJS Modern Web APIs with Node.js & TypeScript

Slide 3

Slide 3 text

Node.js & Architecture Building a Web API Modern Web APIs with Node.js & TypeScript FrankenJS Talking Points

Slide 4

Slide 4 text

Modern Web APIs with Node.js & TypeScript FrankenJS Web API Architecture • Lightweight service-based architecture • Functional services with dedicated interface • Aggregates other services like database or file system • (JSON-based) HTTPS Web APIs • Application push services via WebSocket • Socket.io • SignalR HTTP HTTPS WebSocket Service A Service B Service C Web APIs (ASP.NET, Node.js, …) AuthN & AuthZ Client

Slide 5

Slide 5 text

• Server-side JavaScript powered by Chrome’s V8 JavaScript engine • Asynchronous, event-driven I/O API • Cross-platform: Linux, macOS, Windows • ECMAScript 6 & 7 features • Additional tooling power via TypeScript • Enterprise proven: Netflix, Paypal, Groupon, Walmart Modern Web APIs with Node.js & TypeScript FrankenJS Node.js & TypeScript

Slide 6

Slide 6 text

Modern Web APIs with Node.js & TypeScript FrankenJS Node.js https://nodejs.org/static/documents/casestudies/Node_CaseStudy_Nasa_FNL.pdf

Slide 7

Slide 7 text

Node.js server Event Loop Single Thread Request Requests Request Async I/O Threads Delegate Non-blocking I/O Modern Web APIs with Node.js & TypeScript FrankenJS Node.js

Slide 8

Slide 8 text

… by not looking at more slides ... J Modern Web APIs with Node.js & TypeScript FrankenJS How to build a Web API with Node.js & TypeScript?

Slide 9

Slide 9 text

• Modern applications need a modern (Web API) architecture • Node.js & TypeScript fits well together • Restify for building a Web API Server • SequelizeJS as an ORM with Code First support Modern Web APIs with Node.js & TypeScript FrankenJS Summary

Slide 10

Slide 10 text

• Node.js: https://nodejs.org • TypeScript: http://www.typescriptlang.org/ • Restify: http://restify.com/ • SequelizeJS: http://docs.sequelizejs.com/ Modern Web APIs with Node.js & TypeScript FrankenJS Resources

Slide 11

Slide 11 text

Thank you! Questions? Repository Manuel Rauber @manuelrauber Software Architect https://github.com/thinktecture/frankenjs-2017-nodejs-typescript