Ranvier (named after the French neurophysiologist), is a system for managing all of your application's config in a centralized, transparent, and fault-tolerant way. It consists of
- A Git repository
- A "Node of Ranvier" server which will poll the specified Git repository
- A Ranvier client which will maintain the configuration within your application
- Create a Git repo with your JSON config schema
files.
- See the example repo for a simple example.
- Setup the Ranvier server to point at your created Git repo.
- Connect to your Ranvier server with one of the clients. Currently supported clients are
Ranvier consists of the following packages
- server - All code for the Ranvier server is stored here. The server handles polling the Git repo which houses your config files as well as exposing that config to your applications.
- client - The Go client used to communicate with the server. Many more languages soon to be supported.
- lang - The engine for compiling your schema config files to actual config files.
- cli - A tool for interacting with Ranvier and supporting local dev while using Ranvier.
- commons - All common code shared amongst all of the packages within Ranvier.