Giter Site home page Giter Site logo

fig's Introduction

Build Forks Stargazers Issues MIT License codecov


Logo

Centralized settings management for dotnet microservices.
Explore the docs »

Table of Contents
  1. What is Fig?
  2. Built With
  3. Features
  4. Getting Started
  5. Roadmap
  6. Contributing
  7. License
  8. Contact
  9. Acknowledgments

What is Fig?

Fig is a complete solution for managing settings across multiple micro-services. It consists of three components: a client library, API and web front end.

product-diagram

To add your application to Fig, add the Fig.Client nuget package to your application and register it as a configuration provider (see documentation for details). You also need an environment variable to tell your app the API address. The Fig API and Blazor Web Application can run in containers locally or in the cloud. Fig is able to manage any number of applications including full configuration support, online status and much more.

webpage-screenshot

Configuration With Fig

Built With

(back to top)

Features

  • Free and Open Source

  • Modern, built on latest dotnet technology

  • Complete settings management

    • Offline settings support
    • Centrally manage settings
    • Setting history and audit logging
    • Import & Export of settings and values
    • Live reload of settings
    • Remote restart of settings clients
    • Configuration Provider (support for IOptions)
    • Secure - authentication required for settings management
    • Automatic settings registration
  • Features to improve setting management

    • Setting descriptions driven from markdown documentation (including images)
    • Default values driven by application
    • Different editors depending on setting type
    • Complex value validation
    • Secret setting support
    • Settings grouping
    • Setting verification support using extensible framework
    • Hide settings with reasionable defaults
    • Lookup tables for improved setting translation
    • Instance support to vary settings for indivudual clients
  • Stateless backend for scalability

(back to top)

Getting Started

Read the quickstart guide here

Examples can be found here.

(back to top)

Roadmap

Fig is getting close to being feature complete but is accepting suggestions for new features and improvements.

Included in the roadmap are:

  • End to end integration tests with Playwright
  • Open Telemetry Observability
  • Minor fixes and improvements

See the open issues to suggest something else.

(back to top)

Contributing

If you have any suggestions, please open an issue with the tag 'enhancement'. Don't forget to star the page if the project is useful to you.

If you are interested in contributing to the development, please raise a pull request.

(back to top)

Fig Web Application

webpage-login

License

Distributed under the Apache 2.0 License. See LICENSE.txt for more information.

(back to top)

Contact

Project Link: https://github.com/mzbrau/fig

(back to top)

Acknowledgments

Fig stands on the shoulders of giants. Many thanks to all the open source software that makes it possible.

(back to top)

fig's People

Contributors

mzbrau avatar daniel-svantesson avatar pantsleftinwash avatar

Stargazers

Julio Litwin avatar  avatar Thiago Koster Lago avatar James Doran avatar Luke Arran avatar  avatar Max Smirnov avatar li5414 avatar  avatar Chris Caskey avatar  avatar Ed avatar David Wood avatar Emil Janitzek avatar  avatar

Watchers

Viktor Griph avatar Alan Dugdall avatar David Wood avatar  avatar tomatogod avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.