Main Technologies Used¶
Python¶
Python it’s the main programming language used by the server side application (web admin, API, controller, workers).
In the past OpenWISP was built in Ruby On Rails, but we later switched to Python because it’s much more suited to networking and it has a wider pool of potential contributors.
Django¶
Django is one of the most popular web frameworks for Python language.
It is used extensively in our modules. Django allows rapid development and has a very rich ecosystem.
Node.js and React JS¶
NodeJS is javascript runtime to build JS based applications.
In OpenWISP it’s used as a base for frontend applications along with React, like openwisp-wifi-login-pages.
Ansible¶
We use Ansible to provide an automated procedure to deploy OpenWISP and to compile custom OpenWRT images for different organizations.
Docker¶
We use docker in docker-openwisp, which aims to ease the deployment of OpenWISP in a containerized infrastructure.
NetJSON¶
NetJSON is a data interchange format based on JSON designed to ease the development of software tools for computer networks.