Skip to content

Superposition is a context-based configuration management system designed to facilitate safe and flexible rollout of config changes

License

Notifications You must be signed in to change notification settings

juspay/superposition

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Superposition

GitHub commit activity GitHub last commit X (formerly Twitter) Follow Discord badge

Superposition is a cloud configuration and experimentation management platform that allows software teams to manage their configuration via a central location, run multi-variate experiments for different configuration values and evaluate results of these experiments and conclude them accordingly.

The Superposition platform comes with three components:

  • Context-Aware-Configuration - a flexible configuration management system that supports contextual overrides for configuration keys
  • Experimentation - a experimentation management system that allows supplying different configuration values to equal-sized cohorts (facilitating A/B testing)
  • Metrics - a metrics sub-system that interacts with analytics backends to provide supporting metrics that enable conclusions to be drawn from experiments (TBD)

Getting started

The fastest way to setup superposition along with a demo-app is to use the following docker command:

docker run -d -p 8081:9090 -p 8080:8080 datron1/superposition-demo-app:latest

Once you run this command, you'll find the demo app at localhost:8081 and Superposition at localhost:8080. Play around to understand Superposition better, then dive into the documentation below!

Detailed documentation

  1. Context-Aware-Configuration
  2. Experimentation
  3. Metrics
  4. Client Context-Aware-Configuration
  5. Client Experimentation
  6. Local setup
  7. Context-Aware-Configuration API Ref - Postman Collection
  8. Experimentation API Ref - Postman Collection
  9. TOML formatted Context-Aware-Configuration example
  10. Hitchiker's Guide to Create a New Client

Key highlights

  • Admin UI - Out of the box administration (and tools) UI for configurations and experiments
  • Rich API support - every action on the platform to manage configurations / experiments is supported with an accompanying API
  • Safe configuration changes - support canary testing for releasing configuration changes using experiments
  • Type/Validation support - Comprehensive type support using json-schema and custom validator function support for configuration values
  • Multi-tenant support - a single deployment allows multiple tenants to manage their configurations/experiments in a completely isolated manner
  • Authn/Authz support - control who can make configuration/experimentation changes

Email us