Settings panel without programming

    Hi,

    This is a small service designed to solve the configuration problem of anything. More precisely, the configuration of something connected to the Internet, which can be represented as a fairly branchy object delivered in the form of JSON.

    Problem


    Programs need to store and use a kind of data known as “settings,” or “configuration.” What kind of data is this?

    • they are not very well structured
    • there are not very many, often not more than a hundred values
    • they must be allowed to edit ("admin interface")
    • The application must be aware of the changes.


    What can we come up with for this, and why is it unsuitable?


    • Relational base. The table structure is unsuitable for scattering of unrelated data. There is no interface.
    • Store installation with code. The structure can be any, but the user interface will be a conversation with the developer.
    • Store settings in a text file. A variation of the previous approach. Try to teach a normal person to edit YAML.
    • Use a third-party service like the Google Data API. It will work, but the overhead will be terrible, and the speed of the turtle.


    Actually, the service.
    image


    Simple logic of work: We

    register, select a free name for the scheme (this is called "seed"). Names are common to all, as they will be subdomains. Fill the circuit with the contents in the form designer:

    image

    For each value, select the type, field name, and what will be on the screen in the editing form.

    Automatically we get one hypostasis (instance) of this scheme (each hypostasis is a “tree”) called main. You can do several things, for example, for tests or a development environment. Assign a password for each tree.

    The data of each hypostasis is accessible to a person, for editing, at the address https: // <schema name> .config.ly
    • login: name of hypostasis (“main” if you haven’t changed anything)
    • password: the one you specified in the configuration.


    Since you are too lazy to create your own circuit (I would have been), and I want to see the interface, you can go to the finished one:

    Data is also readable by a soulless bot via HTTPS GET api.config.ly with Basic Authentication:
    • username: schema name
    • password: API key, which was generated for the tree, and which can be viewed when editing the scheme.


    And again, you can immediately try:

    curl -k -u primer:yV7mkhNRs00tM2nTdKuEWV2a api.config.ly

    Total


    What did we get? Just a repository of JSON objects, to which is attached a minimal convenient editing interface. Perhaps this will save you from writing another admin panel.

    Feedback and constructive criticism are greatly appreciated.

    Only registered users can participate in the survey. Please come in.

    What is your first impression?

    • 4.8% Jva of the year was waiting for such a service! 1 5
    • 19.4% Curious, it may come in handy. 20
    • 35.9% I don’t trust my data anyway. 37
    • 2.9% We need more functionality: API for recording, custom styles, etc. (in the comments) 3
    • 0.9% UFO Control Center requires an interface to the database! 1
    • 35.9% Really, some kind of garbage. 37

    Also popular now: