All Projects → uber → Cadence Web

uber / Cadence Web

Licence: other
Web UI for visualizing workflows on Cadence

Programming Languages

javascript
184084 projects - #8 most used programming language
stylus
462 projects

Projects that are alternatives of or similar to Cadence Web

Feathers Vue
A boiler plate template using Feathers with Email Verification, Vue 2 with Server Side Rendering, stylus, scss, jade, babel, webpack, ES 6-8, login form, user authorization, and SEO
Stars: ✭ 195 (-25.29%)
Mutual labels:  webpack, mocha, vuejs2
Github Ranking
🔍GitHub不同语言热门项目排行,Vue.js做页面展示
Stars: ✭ 160 (-38.7%)
Mutual labels:  webpack, vuejs2
Vue Webgulp
Vue.js + Webpack + Gulp + Vue Loader
Stars: ✭ 146 (-44.06%)
Mutual labels:  webpack, vuejs2
Vue Home
🏠 A simple project(Vue Community SPA) which bases on vue+vue-cli+vue-router+axios+ scss.
Stars: ✭ 256 (-1.92%)
Mutual labels:  webpack, vuejs2
Vue 2 Webpack 4 Boilerplate
Ready to use Vue 2+ project with webpack 4 configuration for development and production
Stars: ✭ 142 (-45.59%)
Mutual labels:  webpack, vuejs2
React Permissible
👮‍♂️Making the permission management for React components easier.
Stars: ✭ 145 (-44.44%)
Mutual labels:  webpack, mocha
React Redux Universal Boilerplate
An Universal ReactJS/Redux Boilerplate
Stars: ✭ 165 (-36.78%)
Mutual labels:  webpack, mocha
Karma Webpack Example
Karma + Webpack + Mocha + Chai + Istanbul
Stars: ✭ 88 (-66.28%)
Mutual labels:  webpack, mocha
Nx Admin
👍 A magical 🐮 ⚔ vue admin,记得star
Stars: ✭ 2,497 (+856.7%)
Mutual labels:  webpack, vuejs2
Vue2 Demo
Vue 基于 Genesis + TS + Vuex 实现的 SSR demo
Stars: ✭ 2,072 (+693.87%)
Mutual labels:  webpack, vuejs2
Spring Boot Vuejs
Example project showing how to build a Spring Boot App providing a GUI with Vue.js
Stars: ✭ 1,818 (+596.55%)
Mutual labels:  webpack, vuejs2
Vue Cnode
🔥Vue.js打造一个开源的CNode社区。CNode by Vue.js
Stars: ✭ 249 (-4.6%)
Mutual labels:  webpack, vuejs2
Vue Visualization
Vue 结合 D3.js 进行数据可视化开发的练手案例
Stars: ✭ 125 (-52.11%)
Mutual labels:  webpack, vuejs2
Breko Hub
Babel React Koa Hot Universal Boilerplate
Stars: ✭ 145 (-44.44%)
Mutual labels:  webpack, mocha
Lichter.io
My own website and CV
Stars: ✭ 105 (-59.77%)
Mutual labels:  webpack, vuejs2
Webpack2
基于webpack2和vue.js2构建饿了么多页面应用 🌹
Stars: ✭ 165 (-36.78%)
Mutual labels:  webpack, vuejs2
Sequelize Bookmarks
Sequelize ORM application with Express 4 server, Webpack and Vue.js
Stars: ✭ 85 (-67.43%)
Mutual labels:  webpack, vuejs2
Cookiecutter Webpack
Boilerplate for webpack 2, babel, react + redux + hmr, and karma. Can be inserted into existing django projects.
Stars: ✭ 87 (-66.67%)
Mutual labels:  webpack, mocha
Mochapack
Mocha test runner with integrated webpack precompiler
Stars: ✭ 166 (-36.4%)
Mutual labels:  webpack, mocha
Vue Element Starter
Vue starter with Element-UI [READY, unmaintained now]
Stars: ✭ 216 (-17.24%)
Mutual labels:  webpack, vuejs2

Cadence Web UI

Build Status

Cadence is a distributed, scalable, durable, and highly available orchestration engine we developed at Uber Engineering to execute asynchronous long-running business logic in a scalable and resilient way.

This web UI is used to view workflows from Cadence, see what's running, and explore and debug workflow executions.

Demo Usage

Getting Started

Configuration

Set these environment variables if you need to change their defaults

Variable Description Default
CADENCE_TCHANNEL_PEERS Comma-delmited list of tchannel peers 127.0.0.1:7933
CADENCE_TCHANNEL_SERVICE Name of the cadence tchannel service to call cadence-frontend
CADENCE_WEB_PORT HTTP port to serve on 8088
CADENCE_EXTERNAL_SCRIPTS Addtional JavaScript tags to serve in the UI

Running locally

cadence-web requires node v10.22.1 or greater to be able to run correctly. cadence-web uses all the standard npm scripts to install dependencies, run the server, and run tests. Additionally to run locally with webpack hot reloading and other conveniences, use

npm run dev

For development and contributing to cadence-web, please see the contributing guide.

You may also use docker by pulling ubercadence/web. It is also included in the Cadence server's local docker setup.

API

If you need to extend cadence-web to add middleware to the server, you can install cadence-web as a dependecy, and it will export the Koa web server that has not yet been started or configured. It includes an additional init function that will then compose the built-in middleware. This gives you an option to add middleware before or after you call init so it will add the middleware at the beginning or the end of the chain, respectively.

init(options)

All options are optional.

useWebpack: If true, starts webpack and adds the middleware, otherwise if false, it assumes the UI bundle was already built and serves it statically. Defaults to process.env.NODE_ENV === 'production'.

logErrors: If true, thrown errors are logged to console.error. Defaults to true.

For example, here is how you would add a request count metric using uber-statsd-client:

var app = require('cadence-web')
var createStatsd = require('uber-statsd-client')
var sdc = createStatsd({
    host: 'statsd.example.com'
})

app.use(async function(ctx, next) {
  sdc.increment('http.request')
  await next()
})
.init()
.listen(7000)

The webpack configuration is also exported as webpackConfig, and can be modified before calling init().

Licence

MIT License, please see LICENSE for details.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].