Main Technologies Used¶
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 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.
We use Ansible to provide an automated procedure to deploy OpenWISP and to compile a custom OpenWRT image.
OpenWRT is an linux distribution designed for embedded systems, routers and networking in general.
It has a very skilled community and it is used as a base by many hardware vendors (Technicolor, Ubiquiti Networks, Linksys, Teltonika and many others).