A simple web interface for Turris routers
reForis means redesigned Foris, and it is the latest and the most user-friendly interface for Turris routers.
-
Modern architecture — reForis underlying codebase is built with a tiny layer of Flask, React.js, Bootstrap 4 as a base for styling, and is compiled with Webpack, bringing excellent possibilities for extension and customization.
-
Modular — the interface of reForis is modular, supporting various plugins that can be installed over time by users to broaden the possibilities of what they can do with their router.
-
Responsive — built from the ground up to work on all sorts of devices – from mobile phones to widescreens. The underlying fluid layout will always adapt perfectly to the available screen space.
-
International — thanks to many contributors, reForis includes translations for more than 10 languages and offers community to contribute via web-based continuous localization tool Weblate.
-
Accessible — reForis provides extensible keyboard navigation and semantic markup, including role attributes and landmarks. Furthermore, the layout is entirely based on
rem
values, respecting the user's default font size.
- Turris Shield
- Turris Omnia
- Turris MOX
- Turris 1.x
The development of reForis is possible only on Turris devices due to specific software and hardware usage. Some environment (Docker container), with Turris routers hardware emulation, may be created in the future.
reForis has extensive documentation. It's simple to build via:
make prepare-docs
make docs
Then you can open HTML documentation in ./docs/build/index.html
.
It is also possible to extend reForis functionality with plugins.
For more information about the development of plugins, see reForis
documentation and reforis_diagnostics
demonstration
plugin.
All contributions are welcome!
Please take a look at CONTRIBUTING.md