SASjs - DevOps & AppDev on Desktop SAS

Allan Bowe

Sonic the Hedgehog

https://github.com/allanbowe/sonic

Rock Roller

http://bit.ly/sasrockroller

Viya Token Generator

https://github.com/sasjs/viyatoken

Why SASjs

  • Fully Open Source (MIT)
  • Backed by Analytium
  • Build on one platform, deploy to three

The SAS in SASjs

  • SAS Viya (Job Execution Service)
  • SAS 9 EBI (Stored Process Server)
  • Base SAS (SASjs Server)

The JS in SASjs

  • TypeScript
  • NodeJS
  • NPM (Node Package Manager)

HTML5 App Architecture

SASjs Framework - Main Components

  • @sasjs/core - Macro library
  • @sasjs/adapter - Connectivity
  • @sasjs/cli - CI/CD and Automated Deployment

SASjs Core

  • Make Services, Folders, Groups & more
  • Base SAS, Metadata, Viya
  • npm install @sasjs/core

SASjs Adapter

  • Authentication
  • Bidirectional communication with SAS
  • npm install @sasjs/adapter

SASjs CLI

  • Project Setup
  • Automated Deployments
  • npm install --global @sasjs/cli

SASjs Framework - Extra Stuff

  • @sasjs/lint - code quality
  • @sasjs/vscode - Extension for Visual Studio Code (IDE)
  • @sasjs/server - API interface to Desktop SAS

SASjs lint

  • Code Quality
  • GIT Hooks / CI CD
  • Packaged with both CLI and VS Code extension

SASjs vscode

  • Syntax Highlighting
  • Error Checking
  • To install: search 'SASjs' in Extensions

SASjs server

  • API for Base SAS
  • Available in "Desktop" and "Server" mode
  • Compatible with sasjs/adapter, sasjs/core and sasjs/cli

Allan Bowe, Head of SAS Apps

* create project * compile project * documentation * deploy/tests/jobs/flows/ lint