Jali
Specification-driven serverless microservice DevOps framework and
infrastructure http://jali-ms.io/
Table of Contents
Introduction
Jali is
- specification-driven permitting consumer driven contracts and
multi-version management
- serverless so you can write just your routines and run using any
and all configurable platforms
- where the microservice is the unit of development, delivery and
management
- a full multitenant, partitionable DevOps platform because modern
microservice delivery is continuous
- an extensible, polyglot framework providing circuit breaking and
self-documenting APIs and explicit routine services
- an infrastructure pluggable for many major microservice platforms
(eventually...)
To learn more about developing and managing microservices with Jali,
visit our website.
Developing Jali
See CONTRIBUTING.md.
Project Design
See DESIGN.md.
Technologies Demonstrated
See CREDITS.md for instructions or examples how
to use some of these technologies.
Development environment
- VirtualBox (wiki) a free and
open-source hypervisor for x86 computers
- Vagrant (wiki) manages virtual development
environments
- Ubuntu (wiki) 16.04 development platform
vagrant guest OS
- Chef (wiki) configuration management used for
Ubuntu development environment
- ChefDK Chef developer tools
- Berkshelf Chef cookbook dependency manager
- chef-zero lightweight Chef server that runs in-memory
on the local machine
- Visual Studio Code (wiki) cross platform
source code editor
- jalidev seed project for providing team-consistent
development environments using the technologies above. (incomplete)
Cloud/GitHub development tools
- ALM
- ZenHub GitHub-integrated agile project management
- CI
- PR policy checks
- bitHound: Node.js code analysis your team can agree on
- VersionEye: notifies you about out-dated
dependencies, security vulnerabilities and license violations in
your Git repositories
- Dependency CI: Continuously Test Your Dependencies
- CLA assistant: Easily handle Contributor License
Agreements (CLAs)
NodeJS Development Tools
monorepo
-style projects
npm
as a task runner
- TypeScript 2.1 (wiki) adds optional
static typing to JavaScript
- TypeDoc TypeScript document generator (not integrated)
- tslint An extensible linter for the TypeScript language
- EcmaScript 2017+ (wiki) The maturing
JavaScript language
- See ecmascript-proposals.md for what
features and proposals are implemented in Jali
- esdoc (integrated by Jali)
- eslint The pluggable linting utility for JavaScript and JSX
- webpack 2 (wiki) NodeJS module loader
- Babel 6 JavaScript parser and transpilation platform
- AVA Concurrent JavaScript test framework for EcmaScript + Babel
- istanbul JavaScript code coverage tool
- nyc Istanbul CLI