Enterprise Node - Code Discoverability

Post on 13-Apr-2017

183 views 0 download

Transcript of Enterprise Node - Code Discoverability

ENTERPRISE NODECODE DISCOVERY

ABOUT ME

Tech Lead @ MLS

Medium: @kurtiskempleTwitter: @kurtiskemple

GitHub: @kkemple

REPO FOR THIS WEBINARKKEMPLE/AWESOME-ENTERPRISE-WEB-SERVICE

WHY IS CODE DISCOVERY IMPORTANT?

BENEFITS

• Prevents Code Duplication

• Improves Documentation Processes

• Improves Cross-team Communication

BUILDING PACKAGES FOR DISCOVERABILITY

DEFINING APIS

• Naming Conventions Should be Intuitive

• The API Should be as Simple As Possible (jQuery)

• The API Should be First Level of Documentation

PACKAGE NAMING CONVENTIONS

• Naming Conventions Should be Intuitive

(<org>.UI.components.forms)

• Naming Conventions Should be Consistent

• Naming Conventions Should be Descriptive

DOCUMENTATION

• Anything Public Should be Documented

• Provide Example Usages

• The More Information You Provide About What and Why

the Better

• Types Are a Form of Documentation (Flow, Typescript)

SEMVAR (SEMANTIC VERSIONING)

• Allows for Individual Updates

• Helps Show Maturity of Module

• Forces Thought Into Updates

STORING PACKAGES

SINOPIA

• Open Source Private Registry

• Caches NPM Modules

• Ability to Whitelist/Blacklist Modules

• Search

• https://www.npmjs.com/package/sinopia

NPM ENTERPRISE

• Enterprise Private Registry

• Caches Public NPM Modules

• Ability to Whitelist/Blacklist Modules

• Advanced Search and Dashboard

• https://www.npmjs.com/enterprise

ARTIFACTORY (JFROG)

• Private Registry + Other Artifact Storage

• Caches Public NPM Modules

• Ability to Whitelist/Blacklist Modules

• Advanced Search and Dashboard

• https://www.jfrog.com/artifactory/

INTEGRATING CODE DISCOVERY INTO YOUR WORKFLOW

JS INSPECT

CODE CLIMATE - DUPLICATION ENGINE

SWAGGER API DOCS

JS DOC

RTYPE

FLOW

SEMANTIC-RELEASE

Q&A

• Enterprise Node.js - Code Qualityhttps://www.crowdcast.io/e/enterprise-node-1

• Enterprise Node.js - Code Discoveryhttps://www.crowdcast.io/e/enterprise-node-2

• Enterprise Node.js - Securing Your Environmenthttps://www.crowdcast.io/e/enterprise-node-3

• Enterprise Node.js - Deploying with Dockerhttps://www.crowdcast.io/e/enterprise-node-4

24

ENTERPRISE NODE.JS

JavaScript is replacing Java, Ruby, and .NET as the technology of choice for companies that want to build enterprise software faster, and with fewer resources. Learn about enterprise JavaScript applications at every level of the stack. As well as how to secure, integrate, test, store, monitor, and deploy them.

O’REILLY SOFTWARE ARCHITECTURE CONFERENCEArchitecting For Enterprise in Node.js