ENTERPRISE NODE
CODE DISCOVERY
ABOUT ME
Tech Lead @ MLS
Medium: @kurtiskemple
Twitter: @kurtiskemple
GitHub: @kkemple
REPO FOR THIS WEBINAR
KKEMPLE/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 Quality
https://www.crowdcast.io/e/enterprise-node-1
• Enterprise Node.js - Code Discovery
https://www.crowdcast.io/e/enterprise-node-2
• Enterprise Node.js - Securing Your Environment
https://www.crowdcast.io/e/enterprise-node-3
• Enterprise Node.js - Deploying with Docker
https://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
CONFERENCE
Architecting For Enterprise in Node.js

Enterprise Node - Code Discoverability

  • 1.
  • 2.
    ABOUT ME Tech Lead@ MLS Medium: @kurtiskemple Twitter: @kurtiskemple GitHub: @kkemple
  • 3.
    REPO FOR THISWEBINAR KKEMPLE/AWESOME-ENTERPRISE-WEB-SERVICE
  • 4.
    WHY IS CODEDISCOVERY IMPORTANT?
  • 5.
    BENEFITS • Prevents CodeDuplication • Improves Documentation Processes • Improves Cross-team Communication
  • 6.
  • 7.
    DEFINING APIS • NamingConventions Should be Intuitive • The API Should be as Simple As Possible (jQuery) • The API Should be First Level of Documentation
  • 8.
    PACKAGE NAMING CONVENTIONS •Naming Conventions Should be Intuitive (<org>.UI.components.forms) • Naming Conventions Should be Consistent • Naming Conventions Should be Descriptive
  • 9.
    DOCUMENTATION • Anything PublicShould be Documented • Provide Example Usages • The More Information You Provide About What and Why the Better • Types Are a Form of Documentation (Flow, Typescript)
  • 10.
    SEMVAR (SEMANTIC VERSIONING) •Allows for Individual Updates • Helps Show Maturity of Module • Forces Thought Into Updates
  • 11.
  • 12.
    SINOPIA • Open SourcePrivate Registry • Caches NPM Modules • Ability to Whitelist/Blacklist Modules • Search • https://www.npmjs.com/package/sinopia
  • 13.
    NPM ENTERPRISE • EnterprisePrivate Registry • Caches Public NPM Modules • Ability to Whitelist/Blacklist Modules • Advanced Search and Dashboard • https://www.npmjs.com/enterprise
  • 14.
    ARTIFACTORY (JFROG) • PrivateRegistry + Other Artifact Storage • Caches Public NPM Modules • Ability to Whitelist/Blacklist Modules • Advanced Search and Dashboard • https://www.jfrog.com/artifactory/
  • 15.
  • 16.
  • 17.
    CODE CLIMATE -DUPLICATION ENGINE
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
    • Enterprise Node.js- Code Quality https://www.crowdcast.io/e/enterprise-node-1 • Enterprise Node.js - Code Discovery https://www.crowdcast.io/e/enterprise-node-2 • Enterprise Node.js - Securing Your Environment https://www.crowdcast.io/e/enterprise-node-3 • Enterprise Node.js - Deploying with Docker https://www.crowdcast.io/e/enterprise-node-4 24 ENTERPRISE NODE.JS
  • 25.
    JavaScript is replacingJava, 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 CONFERENCE Architecting For Enterprise in Node.js