#settings #embedded #no-std #configuration #mqtt

macro no-std derive_miniconf

Derive utilities for Miniconf run-time settings configuration

5 releases (3 breaking)

0.5.0 May 12, 2022
0.4.0 May 11, 2022
0.3.0 Dec 13, 2021
0.1.1 Oct 28, 2021
0.1.0 Aug 11, 2021

#497 in Embedded development

Download history 147/week @ 2022-04-20 166/week @ 2022-04-27 356/week @ 2022-05-04 449/week @ 2022-05-11 202/week @ 2022-05-18 149/week @ 2022-05-25 249/week @ 2022-06-01 151/week @ 2022-06-08 220/week @ 2022-06-15 161/week @ 2022-06-22 126/week @ 2022-06-29 250/week @ 2022-07-06 148/week @ 2022-07-13 284/week @ 2022-07-20 325/week @ 2022-07-27 475/week @ 2022-08-03

1,330 downloads per month
Used in 4 crates (via miniconf)

MIT license

18KB
259 lines

MiniConf

QUARTIQ Matrix Chat Continuous Integration

Miniconf is a no_std minimal run-time settings configuration tool designed to be run on top of any communication means. It was originally designed to work with MQTT clients and provides a default implementation using minimq as the MQTT client.

Check out the documentation for examples and detailed information.

Features

Miniconf provides simple tools to bring run-time configuration up on any project. Any device that can send and receive data can leverage Miniconf to provide run-time configuration utilities.

This crate provides a Derive macro is provided to automatically map Rust structures into a key-value lookup tool, where keys use a string-based, path-like syntax to access and modify structure members.

Miniconf also provides an MQTT client and Python utility to quickly bring IoT and remote configuration to your project. After running programming your device, settings updates are easily accomplished using Python:

# Set the `sample_rate_hz` value of device with identifier `quartiq/example_device` to `10`.
python -m miniconf quartiq/example_device sample_rate_hz=10

Dependencies

~215–620KB
~15K SLoC