Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/manukumarnm/netjsonconfig


https://github.com/manukumarnm/netjsonconfig

Last synced: 23 days ago
JSON representation

Awesome Lists containing this project

README

        

netjsonconfig
=============

.. image:: https://github.com/openwisp/netjsonconfig/workflows/Netjsonconfig%20CI%20Build/badge.svg?branch=master
:target: https://github.com/openwisp/netjsonconfig/actions?query=workflow%3A%22Netjsonconfig+CI+Build%22

.. image:: https://coveralls.io/repos/openwisp/netjsonconfig/badge.svg
:target: https://coveralls.io/r/openwisp/netjsonconfig

.. image:: https://requires.io/github/openwisp/netjsonconfig/requirements.svg?branch=master
:target: https://requires.io/github/openwisp/netjsonconfig/requirements/?branch=master
:alt: Requirements Status

.. image:: https://img.shields.io/gitter/room/nwjs/nw.js.svg?style=flat-square
:target: https://gitter.im/openwisp/general

.. image:: https://badge.fury.io/py/netjsonconfig.svg
:target: http://badge.fury.io/py/netjsonconfig

.. image:: https://pepy.tech/badge/netjsonconfig
:target: https://pepy.tech/project/netjsonconfig
:alt: downloads

.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://pypi.org/project/black/
:alt: code style: black

------------

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

.. image:: http://netjsonconfig.openwisp.org/en/latest/_images/openwisp.org.svg
:target: http://openwisp.org

**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
* 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 `_