netjsonconfig

Netjsonconfig is a python library that converts NetJSON DeviceConfiguration objects into real router configurations that can be installed on systems like OpenWRT or OpenWisp Firmware.


Keywords
openwrt, openwisp, netjson, networking, hacktoberfest, lede, openvpn, uci, wireless
License
GPL-3.0
Install
pip install netjsonconfig==1.0.2

Documentation

netjsonconfig

https://github.com/openwisp/netjsonconfig/workflows/Netjsonconfig%20CI%20Build/badge.svg?branch=master Dependency monitoring https://img.shields.io/gitter/room/nwjs/nw.js.svg?style=flat-square downloads code style: black

Netjsonconfig is a part of the OpenWISP project and it's the official configuration engine of OpenWISP 2.

netjsonconfig is a python library that converts NetJSON DeviceConfiguration objects into real router configurations that can be installed on systems like OpenWRT, LEDE or OpenWisp Firmware.

Its main features are listed below for your reference:

  • OpenWRT / LEDE support
  • OpenWisp Firmware support
  • OpenVPN support
  • WireGuard support
  • ZeroTier support
  • Possibility to support more firmwares via custom backends
  • Based on the NetJSON RFC
  • Validation based on JSON-Schema
  • Templates: store common configurations in templates
  • Multiple template inheritance: reduce repetition to the minimum
  • File inclusion: easy inclusion of arbitrary files in configuration packages
  • Variables: reference variables in the configuration
  • Command line utility: easy to use from shell scripts or from other programming languages

Documentation | Change log | Support channels | Issue Tracker | License