Updated software chapter of the manual

This commit is contained in:
Mark Qvist 2026-09-24 14:38:29 +02:00
parent 192898864c
commit 780b7e6bfc
No known key found for this signature in database
50 changed files with 825 additions and 371 deletions

View file

@ -2,7 +2,7 @@ Reticulum Network Stack <img align="right" src="https://static.pepy.tech/persona
==========
> [!WARNING]
> A significant number of hastily launched, incorrect, dubious, directly harmful and, in most cases, entirely LLM-generated fakes of Reticulum implementations are currently being marketed and pushed under polished, but ultimately misleading or outright deceptive claims. For more detailed information, see the relevant sections of the [Brandolini's Reference](https://reticulum.network/manual/brandolinis.html) chapter of the manual. Known good community implementations are listed in the **Community Implementations** section of this readme.
> A significant number of hastily launched, incorrect, dubious, directly harmful and, in most cases, entirely LLM-generated fakes of Reticulum implementations are currently being marketed and pushed under polished, but ultimately misleading or outright deceptive claims. For more detailed information, see the relevant sections of the [Brandolini's Reference](https://reticulum.network/manual/brandolinis.html) chapter of the manual. Known good community implementations are listed in the [Community Implementations](#community-implementations) section of this readme.
<p align="center"><img width="200" src="https://raw.githubusercontent.com/markqvist/Reticulum/master/docs/source/graphics/rns_logo_512.png"></p>
@ -126,9 +126,7 @@ The core Reticulum maintainers and developers **strongly advise against using an
We kindly, but urgently ask all users to excercise caution, common sense and healthy skepticism when [evaluating](https://reticulum.network/manual/brandolinis.html#evaluating-a-reticulum-implementation) the potential use of any implementation not listed above; and to accept that **choosing to do so regardless translates the responsibility for potential damage from an irresponsible or malicious individual onto yourself**.
## Examples of Reticulum Applications
If you want to quickly get an idea of what Reticulum can do, take a look at the
[Programs Using Reticulum](https://reticulum.network/manual/software.html)
section of the manual, or the following resources:
If you want to quickly get an idea of what Reticulum can do, take a look at the [Programs Using Reticulum](https://reticulum.network/manual/software.html) section of the manual, or the following resources:
- [LXMF](https://github.com/markqvist/lxmf) is a distributed, delay and disruption tolerant message transfer protocol built on Reticulum
- The [LXST](https://github.com/markqvist/lxst) protocol and framework provides real-time audio and signals transport over Reticulum. It includes primitives and utilities for building voice-based applications and hardware devices, such as the `rnphone` program, that can be used to build hardware telephones.
@ -136,6 +134,7 @@ section of the manual, or the following resources:
- The Android, Linux, macOS and Windows app [Sideband](https://github.com/markqvist/Sideband) has a graphical interface and many advanced features, such as file transfers, image and voice messages, real-time voice calls, a distributed telemetry system, mapping capabilities and full plugin extensibility.
- [MeshChatX](https://git.quad4.io/RNS-Things/MeshChatX) is a full-featured LXMF client with many built-in tools and functionalities, that also supports image and voice messages, file transfers and voice calls. It also includes a built-in page browser for browsing Nomad Network nodes.
- You can use the included [rnsh](https://reticulum.network/manual/using.html#the-rnsh-utility) program to establish remote shell sessions over Reticulum.
- The included [rngit](https://reticulum.network/manual/git.html) system provides a full solution for managing, hosting, collaborating on and interacting with Git repositories over Reticulum.
## Where can Reticulum be used?
Over practically any medium that can support at least a half-duplex channel

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 54 KiB

Before After
Before After

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 KiB

View file

@ -8,6 +8,16 @@ This chapter of the manual serves as the technical reference for the distributed
A set of utilities for distributed collaborative software development and publishing are included in RNS.
.. only:: html
.. image:: screenshots/rngit.webp
:align: center
.. only:: latex
.. image:: screenshots/rngit.png
:align: center
The system consists of two parts: The ``rngit`` node that hosts repositories, and the ``git-remote-rns`` helper that enables Git to communicate with rngit nodes. As soon as you have RNS installed on your system, you can transparently use Git with Reticulum-hosted repositories just like any other type of remote. Git over Reticulum uses URLs in the following format: ``rns://DESTINATION_HASH/group/repo``.
If you set a branch to track a Reticulum remote as the default upstream, you can simply use ``git`` as you normally would; all commands work transparently and as expected.

View file

@ -4,146 +4,225 @@
Programs Using Reticulum
************************
This chapter provides a non-exhaustive list of notable programs, systems and application-layer
protocols that have been built using Reticulum.
This chapter provides a non-exhaustive list of notable programs, systems and application-layer protocols that have been built using Reticulum.
These programs will let you get a feel for how Reticulum works. Most of them have been designed
to run well even over slow networks based on LoRa or packet radio, but all can also be used over fast
links, such as local WiFi, wired Ethernet, the Internet, or any combination.
Many different applications using Reticulum already exist, serving a wide variety of purposes from day-to-day communication and information sharing to systems administration and tackling advanced networking and communications challenges.
As such, it is easy to get started experimenting, without having to set up any radio
transceivers or infrastructure just to try it out. Launching the programs on separate
devices connected to the same WiFi network is enough to get started, and physical
radio interfaces can then be added later.
.. tip::
For ease of discovery while reading this manual over the web or as an e-book, links provided in this chapter primarily point to repositories and pages located on internet servers. In many cases, these are public web mirrors, with the upstream repositories residing on Reticulum nodes. For the latest source, updates and information regarding any project, be sure to check their Nomad Network or ``rngit`` nodes.
Programs & Utilities
====================
These programs will let you get a feel for how Reticulum works. Most of them have been designed to run well even over slow networks based on LoRa or packet radio, but all can also be used over fast links, such as local WiFi, wired Ethernet, the Internet, or any combination.
Many different applications using Reticulum already exist, serving a wide variety of purposes
from day-to-day communication and information sharing to systems administration and tackling
advanced networking and communications challenges.
As such, it is easy to get started experimenting, without having to set up any radio transceivers or infrastructure just to try it out. Launching the programs on separate devices connected to the same WiFi network is enough to get started, and physical radio interfaces can then be added later.
Development of Reticulum-based applications and systems is ongoing, so consider this list
a non-exhaustive starting point of *some* of the options available. With a bit of searching,
primarily over Reticulum itself, you will find many more interesting things.
Development of Reticulum-based applications and systems is ongoing, so consider this list a non-exhaustive starting point of *some* of the options available. With a bit of searching, primarily over Reticulum itself, you will find many more interesting things.
Remote Shell
^^^^^^^^^^^^
Browsing & Publishing
=====================
The `rnsh <https://github.com/acehoss/rnsh>`_ program lets you establish fully interactive
remote shell sessions over Reticulum. It also allows you to pipe any program to or from a
remote system, and is similar to how ``ssh`` works. The ``rnsh`` program is very efficient, and
can facilitate fully interactive shell sessions, even over extremely low-bandwidth links,
such as LoRa or packet radio.
In addition to the programs listed in this section, other Nomad Network clients include:
In addition to the default, fully interactive terminal mode,
for extremely limited links, ``rnsh`` offers line-interactive mode, allowing you to interact
with remote systems, even when link throughput is counted in a few hundreds of bits per second.
.. raw:: latex
\newpage
- `MeshChatX <https://meshchatx.com/>`_
- `Columba <https://github.com/torlando-tech/columba/>`_
Nomad Network
^^^^^^^^^^^^^
The terminal-based program `Nomad Network <https://github.com/markqvist/nomadnet>`_
provides a complete encrypted communications suite built with Reticulum. It features
encrypted messaging (both direct and delayed-delivery for offline users), file sharing,
and has a built-in text-browser and page server with support for dynamically rendered pages,
user authentication and more.
The terminal-based program `Nomad Network <https://github.com/markqvist/nomadnet>`_ provides a complete encrypted communications suite built with Reticulum.
.. image:: screenshots/nomadnet_3.png
:target: https://github.com/markqvist/nomadnet
.. only:: html
`Nomad Network <https://github.com/markqvist/nomadnet>`_ is a user-facing client
for the messaging and information-sharing protocol LXMF.
.. image:: screenshots/nomadnet_6.webp
:align: center
:target: https://github.com/markqvist/nomadnet
.. only:: latex
.. image:: screenshots/nomadnet_6.png
:align: center
:target: https://github.com/markqvist/nomadnet
It features encrypted LXMF messaging (both direct and delayed-delivery for offline users), file sharing, and has a built-in text-browser and page server with support for dynamically rendered pages, user authentication and more. It also includes an RRC client and a suite of network utilities.
Ren Browser
^^^^^^^^^^^
`Ren Browser <https://github.com/Quad4-Software/Ren-Browser>`_ is a modern, standalone browser for Reticulum Network using the `Reticulum-Go <https://github.com/Quad4-Software/Reticulum-Go>`_ stack. The project actively being developed, and should be considered alpha level software, but much of the functionality is already working. If you want to help expanding the ecosystem, this is an excellent project to take a look at.
.. only:: html
.. image:: screenshots/ren_browser.webp
:align: center
:target: https://github.com/fr33n0w/rBrowser
.. only:: latex
.. image:: screenshots/ren_browser.png
:align: center
:target: https://github.com/fr33n0w/rBrowser
Ren Browser is great example of an application aiming for true, seamless interoperability with the existing software ecosystem. It can operate fully standalone using it's embedded `Go implementation <https://github.com/Quad4-Software/Reticulum-Go>`_ of Reticulum, or seamlessly utilise a shared RNS instance already running on the system.
RNS Page Node
^^^^^^^^^^^^^
`RNS Page Node <https://git.quad4.io/RNS-Things/rns-page-node>`_ is a simple way to serve pages and files to any other Nomad Network compatible client. Drop-in replacement for NomadNet nodes that primarily serve pages and files.
`RNS Page Node <https://github.com/Quad4-Software/rns-page-node>`_ is a simple way to serve pages and files to any other Nomad Network compatible client. Drop-in replacement for NomadNet nodes that primarily serve pages and files.
Retipedia
^^^^^^^^^
You can host the entirity of Wikipedia (or any ``.zim``) file to other Nomad Network clients using `Retipedia <https://github.com/RFnexus/Retipedia>`_.
You can host the entirity of Wikipedia, StackExchange or any other ``.zim`` file, to Nomad Network clients using `Retipedia <https://github.com/RFnexus/Retipedia>`_.
.. only:: html
.. image:: screenshots/retipedia.webp
:align: center
:target: https://github.com/RFnexus/Retipedia
.. only:: latex
.. image:: screenshots/retipedia.png
:align: center
:target: https://github.com/RFnexus/Retipedia
Git Over Reticulum
^^^^^^^^^^^^^^^^^^
The included :ref:`rngit<git-main>` system provides a fully distributed solution for managing, hosting, collaborating on and interacting with Git repositories over Reticulum.
.. only:: html
.. image:: screenshots/rngit.webp
:align: center
.. only:: latex
.. image:: screenshots/rngit.png
:align: center
.. raw:: latex
\newpage
Messaging & Voice
=================
Sideband
^^^^^^^^
If you would rather use an LXMF client with a graphical user interface, you can take
a look at `Sideband <https://unsigned.io/sideband>`_, which is available for Android,
Linux, macOS and Windows. Sideband is an advanced LXMF and LXST client, and a multi-purpose Reticulum
utility, with features and functionality targeted at advanced users.
`Sideband <https://github.com/markqvist/Sideband>`_ is a technical LXMF and LXST client, for Android, Linux, macOS and Windows. It also serves as a multi-purpose Reticulum utility, with features and functionality targeted at advanced users.
.. only:: html
.. image:: screenshots/sideband_devices.webp
:align: center
:target: https://unsigned.io/sideband
:target: https://github.com/markqvist/Sideband
.. only:: latex
.. image:: screenshots/sideband_devices.png
:align: center
:target: https://unsigned.io/sideband
:target: https://github.com/markqvist/Sideband
Sideband allows you to communicate with other people or LXMF-compatible
systems over Reticulum networks using LoRa, Packet Radio, WiFi, I2P, Encrypted QR
Paper Messages, or anything else Reticulum supports.
Sideband allows you to communicate with other people or LXMF-compatible systems over Reticulum networks using LoRa, Packet Radio, WiFi, I2P, Encrypted QR Paper Messages, or anything else Reticulum supports.
It also interoperates with all other LXMF clients, and provides advanced features such as voice messaging,
real-time voice calls, file attachments, private telemetry sharing, and a full
plugin system for expandability.
It interoperates with all other LXMF clients, and provides advanced features such as PTT and voice messaging, real-time voice calls, file attachments, private telemetry sharing, and a full plugin system for expandability.
.. raw:: latex
\newpage
MeshChatX
^^^^^^^^
^^^^^^^^^
A `Reticulum MeshChat fork from the future <https://git.quad4.io/RNS-Things/MeshChatX>`_, with the goal of providing everything you need for Reticulum, LXMF, and LXST in one beautiful and feature-rich application. This project is separate from the original `Reticulum MeshChat <https://github.com/liamcottle/reticulum-meshchat>`_ project, and is not affiliated with the original project, but is a much more up-to-date, comprehensive and well-maintained fork.
`MeshChatX <https://meshchatx.com/>`_ is an all-in-one Reticulum client with messaging, calling, and a NomadNet browser, providing everything you need for Reticulum, LXMF, and LXST in one beautiful and feature-rich application.
.. only:: html
.. image:: screenshots/meshchatx.webp
:align: center
:target: https://git.quad4.io/RNS-Things/MeshChatX
:target: https://meshchatx.com/
.. only:: latex
.. image:: screenshots/meshchatx.png
:align: center
:target: https://git.quad4.io/RNS-Things/MeshChatX
:target: https://meshchatx.com/
Features include full LXST support, custom voicemail, phonebook, contact sharing, and ringtone support, multi-identity handling, modern UI/UX, offline documentation, expanded tools, page archiving, integrated maps, telemetry and improved application security.
Features include full LXST support, custom voicemail, phonebook, contact sharing, ringtone support, multi-identity handling, modern UI/UX, offline documentation, expanded tools, page archiving, integrated maps, telemetry and improved application security.
.. raw:: latex
Columba
^^^^^^^
\newpage
`Columba <https://github.com/torlando-tech/columba/>`_ is a simple and familiar LXMF messaging app Android, built with a native Android interface and Material Design 3. It also includes LXST voice call functionality, and a mobile Nomad Network page browser.
.. only:: html
.. image:: screenshots/columba.webp
:align: center
:target: https://github.com/torlando-tech/columba/
.. only:: latex
.. image:: screenshots/columba.png
:align: center
:target: https://github.com/torlando-tech/columba/
Ren TUI
^^^^^^^
`Ren TUI <https://github.com/Quad4-Software/Ren-TUI>`_ is an early prototype terminal LXMF client for Reticulum built with Odin on librns (Reticulum-Go). It aims for NomadNet-like messaging/browsing without urwid or ncurses.
.. only:: html
.. image:: screenshots/rentui.webp
:align: center
:target: https://github.com/Quad4-Software/Ren-TUI
.. only:: latex
.. image:: screenshots/rentui.png
:align: center
:target: https://github.com/Quad4-Software/Ren-TUI
Chat
====
Reticulum Relay Chat
^^^^^^^^^^^^^^^^^^^^
`Reticulum Relay Chat <https://rrc.kc1awv.net/>`_ is a live chat system built on top of the Reticulum Network Stack. It exists to let people talk to each other in real time over Reticulum without dragging in message databases, synchronization engines, or architectural commitments they did not ask for.
The `rrcd <https://github.com/kc1awv/rrcd>`_ program provides a functional, reference RRC hub-server daemon implementation. RRC user clients include `rrc-gui <https://github.com/kc1awv/rrc-gui>`_ and `rrc-web <https://github.com/kc1awv/rrc-web>`_.
.. only:: html
.. image:: screenshots/rrc.webp
:align: center
.. only:: latex
.. image:: screenshots/rrc.png
:align: center
RRC is closer in spirit to IRC than to modern “everything platforms.” You connect, you join a room, you talk, and then you leave. If you were present, you saw the conversation. If you were not, the conversation did not wait for you. This is not an accident. This is the entire design.
The `rrcd <https://github.com/kc1awv/rrcd>`_ program provides a functional, reference RRC hub-server daemon implementation. RRC user clients include:
- `Nomad Network <https://github.com/markqvist/NomadNet/>`_
- `MeshChatX <https://meshchatx.com/>`_
- `Eridanus <https://github.com/torlando-tech/eridanus>`_
- `rrc-gui <https://github.com/kc1awv/rrc-gui>`_
- `rrc-web <https://github.com/kc1awv/rrc-web>`_
RetiBBS
^^^^^^^
`RetiBBS <https://github.com/kc1awv/RetiBBS>`_ is a bulletin board system implementation for Reticulum networks.
`RetiBBS <https://github.com/kc1awv/RetiBBS>`_ is an old-school bulletin board system implementation for Reticulum networks.
.. only:: html
@ -163,29 +242,14 @@ RetiBBS allows users to communicate through message boards in a secure manner.
\newpage
RBrowser
^^^^^^^^
Voice & Telephony
=================
The `rBrowser <https://github.com/fr33n0w/rBrowser>`_ program is a cross-platform, standalone, web-based browser for exploring NomadNetwork Nodes over Reticulum Network. It automatically discovers NomadNet nodes through network announces and provides a user-friendly interface for browsing distributed content with Micron markup support.
In addition to the programs listed in this section, other LXST voice clients include:
.. only:: html
.. image:: screenshots/rbrowser.webp
:align: center
:target: https://github.com/fr33n0w/rBrowser
.. only:: latex
.. image:: screenshots/rbrowser.png
:align: center
:target: https://github.com/fr33n0w/rBrowser
Includes useful features like automatic listening for announce, adding nodes to favorites, browsing and rendering any kind of NomadNet links, downloading files from remote nodes, a unique local NomadNet Search Engine and more.
.. raw:: latex
\newpage
- `Sideband <https://github.com/markqvist/Sideband>`_
- `MeshChatX <https://meshchatx.com/>`_
- `Columba <https://github.com/torlando-tech/columba/>`_
Reticulum Network Telephone
^^^^^^^^^^^^^^^^^^^^^^^^^^^
@ -206,14 +270,31 @@ The ``rnphone`` program, included as part of the `LXST <https://github.com/markq
It supports interfacing directly with hardware peripherals such as GPIO keypads and LCD displays, providing a modular system for building secure hardware telephones.
.. raw:: latex
\newpage
Partyline
^^^^^^^^^
`Partyline <https://github.com/RFnexus/partyline>`_ is a group voice application for Reticulum, built on `LXST <https://github.com/markqvist/LXST>`_, inspired by `Mumble <https://github.com/mumble-voip/mumble>`_.
.. only:: html
.. image:: screenshots/partyline.webp
:align: center
:target: https://github.com/markqvist/LXST
.. only:: latex
.. image:: screenshots/partyline.png
:align: center
:target: https://github.com/markqvist/LXST
It provides both realtime group voice over any Reticulum transport capable of >6 kilobits per second, LXST dial-in support, listen-only music/broadcasting rooms, and many other useful functions.
LXST Phone
^^^^^^^^^^
The `LXST Phone <https://github.com/kc1awv/lxst_phone>`_ program is a cross-platform desktop application for performing LXST voice calls over Reticulum.
The `LXST Phone <https://github.com/kc1awv/lxst_phone>`_ program is a cross-platform desktop application for performing LXST voice calls over Reticulum. It supports various advanced features such as SAS verification, peer blocking, rate limiting, encrypted call history storage and contact management.
.. only:: html
@ -227,28 +308,60 @@ The `LXST Phone <https://github.com/kc1awv/lxst_phone>`_ program is a cross-plat
:align: center
:target: https://github.com/kc1awv/lxst_phone
It supports various advanced features such as SAS verification, peer blocking, rate limiting, encrypted call history storage and contact management.
.. raw:: latex
\newpage
LXMFy
^^^^^
System Administration
=====================
`LXMFy <https://lxmfy.quad4.io/>`_ is a comprehensive and advanced bot creation framework for LXMF, that allows building any kind of automation or bot system running over LXMF and Reticulum. `Bot implementations exist <https://github.com/lxmfy/awesome-lxmfy-bots>`_ for Home Assistant control, LLM integrations, and various other purposes.
Remote Shell
^^^^^^^^^^^^
The included :ref:`rnsh<using-rnsh>` program lets you establish fully interactive
remote shell sessions over Reticulum. It also allows you to pipe any program to or from a
remote system, and is similar to how ``ssh`` works. The ``rnsh`` program is very efficient, and
can facilitate fully interactive shell sessions, even over extremely low-bandwidth links,
such as LoRa or packet radio.
LXMF Interactive Client
^^^^^^^^^^^^^^^^^^^^^^^
`LXMF Interactive Client <https://github.com/fr33n0w/lxmf-cli>`_ is a feature-rich, terminal-based LXMF messaging client with many advanced features and an extensible plugin architecture.
In addition to the default, fully interactive terminal mode, for extremely limited links,
``rnsh`` offers line-interactive mode, allowing you to interact with remote systems, even
when link throughput is counted in a few hundreds of bits per second.
RNS FileSync
^^^^^^^^^^^^
The `RNS FileSync <https://git.quad4.io/RNS-Things/RNS-Filesync>`_ program enables automatic file synchronization between devices without requiring central servers, internet connectivity, or cloud services. It works over any network medium supported by Reticulum, including radio, LoRa, WiFi, or the internet, making it ideal for off-grid, privacy-focused, and resilient file sharing.
The `RNS FileSync <https://github.com/Quad4-Software/RNS-Filesync>`_ program enables automatic file synchronization between devices without requiring central servers, internet connectivity, or cloud services. It works over any network medium supported by Reticulum, including radio, LoRa, WiFi, or the internet, making it ideal for off-grid, privacy-focused, and resilient file sharing.
.. raw:: latex
\newpage
Utilities & Components
======================
Modem73
^^^^^^^
`MODEM73 <https://github.com/RFnexus/modem73>`_ and its companion `Modem73Interface <https://github.com/RFnexus/modem73interface>`_ is an open source software modem that works with any HF, VHF, or UHF radio capable of 2400 Hz of bandwidth. All you need is a sound card and audio cable for your radio.
.. only:: html
.. image:: screenshots/modem73.webp
:align: center
:target: https://github.com/RFnexus/modem73
.. only:: latex
.. image:: screenshots/modem73.jpg
:align: center
:target: https://github.com/RFnexus/modem73
LXMFy
^^^^^
`LXMFy <https://lxmfy.quad4.io/>`_ is a comprehensive and advanced bot creation framework for LXMF, that allows building any kind of automation or bot system running over LXMF and Reticulum. `Bot implementations exist <https://lxmfy.quad4.io/latest/creating-bots/>`_ for Home Assistant control, LLM integrations, and various other purposes.
Micron Parser JS
@ -256,6 +369,25 @@ Micron Parser JS
`Micron Parser JS <https://github.com/RFnexus/micron-parser-js>`_ is the JavaScript-based parser for the Micron markup language, that most web-based Nomad Network browsers use. If you want to make utilities or tools that display Micron pages, this library is essential.
Reticulated
^^^^^^^^^^^
`Reticulated <https://github.com/RFnexus/Reticulated>`_ is a Reticulum Network simulator that spawns live, interactive Reticulum instances controllable from a node-based Web UI.
.. only:: html
.. image:: screenshots/reticulated.webp
:align: center
:target: https://github.com/RFnexus/Reticulated
.. only:: latex
.. image:: screenshots/reticulated.jpg
:align: center
:target: https://github.com/RFnexus/Reticulated
You can create networks of any topology and set bitrate, MTU, and configure path loss and propagation behavior. It provides a top-down view to a live network. You can connect any Reticulum application to the simulated network. It also has built in utilities like a basic LXMF chat function and Resource transfer included.
RNMon
^^^^^
@ -267,6 +399,16 @@ RNMon
\newpage
Device Flashers
===============
In addition to the included command-line ``rnodeconf`` flasher, several community-provided RNode device flashers exist:
- `RNS Moscow <https://flasher.rns.moscow/>`_
- `Aetherlab <https://flasher.aetherlab.org/>`_
Several programs, such as `Sideband <https://github.com/markqvist/Sideband>`_ and `MeshChatX <https://meshchatx.com/>`_ also include built-in device flashers that can be used fully offline.
Protocols
=========
@ -298,8 +440,8 @@ Interface Modules & Connectivity Resources
This section provides a list of various community-provided interface modules, guides and resources for creating Reticulum networks over special or challenging mediums.
* Custom interface module for running `RNS over HTTP <https://git.quad4.io/RNS-Things/RNS-over-HTTP>`_
* `Modem73 <https://github.com/RFnexus/modem73>`_ is an efficient software modem that can be used with Reticulum
* Custom interface module for running `RNS over HTTP <https://github.com/Quad4-Software/RNS-over-HTTP>`_
* Guide for running `Reticulum over ICMP <https://github.com/matvik22000/rns-over-icmp>`_ using ``PipeInterface``
* Guide for running `Reticulum over DNS <https://github.com/markqvist/Reticulum/discussions/1002>`_ with Iodine
* Guide for running `Reticulum over HF radio <https://github.com/RFnexus/reticulum-over-hf>`_
* `Modem73 <https://github.com/RFnexus/modem73>`_ is a KISS TNC OFDM modem frontend that can be used with Reticulum
* Guide for running `Reticulum over HF radio <https://github.com/RFnexus/reticulum-over-hf>`_

View file

@ -705,7 +705,7 @@ The rnx Utility
The ``rnx`` utility is a basic remote command execution program. It allows you to
execute commands on remote systems over Reticulum, and to view returned command
output. For a fully interactive remote shell solution, be sure to also take a look
at the `rnsh <https://github.com/acehoss/rnsh>`_ program.
at the :ref:`rnsh<using-rnsh>` program.
**Usage Examples**
@ -771,6 +771,8 @@ another one, which will be created if it does not already exist
--version show program's version number and exit
.. _using-rnsh:
The rnsh Utility
================

View file

@ -267,6 +267,7 @@
<span id="git-main"></span><h1>Git Over Reticulum<a class="headerlink" href="#git-over-reticulum" title="Link to this heading"></a></h1>
<p>This chapter of the manual serves as the technical reference for the distributed software development and project collaboration tools included in RNS. For a conceptual overview, see the <a class="reference internal" href="distributed.html#distributed-development"><span class="std std-ref">Distributed Development</span></a> chapter.</p>
<p>A set of utilities for distributed collaborative software development and publishing are included in RNS.</p>
<img alt="_images/rngit.webp" class="align-center" src="_images/rngit.webp" />
<p>The system consists of two parts: The <code class="docutils literal notranslate"><span class="pre">rngit</span></code> node that hosts repositories, and the <code class="docutils literal notranslate"><span class="pre">git-remote-rns</span></code> helper that enables Git to communicate with rngit nodes. As soon as you have RNS installed on your system, you can transparently use Git with Reticulum-hosted repositories just like any other type of remote. Git over Reticulum uses URLs in the following format: <code class="docutils literal notranslate"><span class="pre">rns://DESTINATION_HASH/group/repo</span></code>.</p>
<p>If you set a branch to track a Reticulum remote as the default upstream, you can simply use <code class="docutils literal notranslate"><span class="pre">git</span></code> as you normally would; all commands work transparently and as expected.</p>
<div class="admonition important">

View file

@ -373,28 +373,49 @@ to participate in the development of Reticulum itself.</p>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="software.html">Programs Using Reticulum</a><ul>
<li class="toctree-l2"><a class="reference internal" href="software.html#programs-utilities">Programs &amp; Utilities</a><ul>
<li class="toctree-l3"><a class="reference internal" href="software.html#remote-shell">Remote Shell</a></li>
<li class="toctree-l2"><a class="reference internal" href="software.html#browsing-publishing">Browsing &amp; Publishing</a><ul>
<li class="toctree-l3"><a class="reference internal" href="software.html#nomad-network">Nomad Network</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#ren-browser">Ren Browser</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#rns-page-node">RNS Page Node</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#retipedia">Retipedia</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#git-over-reticulum">Git Over Reticulum</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="software.html#messaging-voice">Messaging &amp; Voice</a><ul>
<li class="toctree-l3"><a class="reference internal" href="software.html#sideband">Sideband</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#meshchatx">MeshChatX</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#id6">MeshChatX</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#id8">Columba</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#ren-tui">Ren TUI</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="software.html#chat">Chat</a><ul>
<li class="toctree-l3"><a class="reference internal" href="software.html#reticulum-relay-chat">Reticulum Relay Chat</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#retibbs">RetiBBS</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#rbrowser">RBrowser</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="software.html#voice-telephony">Voice &amp; Telephony</a><ul>
<li class="toctree-l3"><a class="reference internal" href="software.html#reticulum-network-telephone">Reticulum Network Telephone</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#partyline">Partyline</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#lxst-phone">LXST Phone</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#lxmfy">LXMFy</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#lxmf-interactive-client">LXMF Interactive Client</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="software.html#system-administration">System Administration</a><ul>
<li class="toctree-l3"><a class="reference internal" href="software.html#remote-shell">Remote Shell</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#rns-filesync">RNS FileSync</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="software.html#utilities-components">Utilities &amp; Components</a><ul>
<li class="toctree-l3"><a class="reference internal" href="software.html#modem73">Modem73</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#lxmfy">LXMFy</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#micron-parser-js">Micron Parser JS</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#reticulated">Reticulated</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#rnmon">RNMon</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="software.html#device-flashers">Device Flashers</a></li>
<li class="toctree-l2"><a class="reference internal" href="software.html#protocols">Protocols</a><ul>
<li class="toctree-l3"><a class="reference internal" href="software.html#lxmf">LXMF</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#id16">LXST</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#id30">LXST</a></li>
<li class="toctree-l3"><a class="reference internal" href="software.html#rrc">RRC</a></li>
</ul>
</li>

Binary file not shown.

File diff suppressed because one or more lines are too long

View file

@ -265,96 +265,114 @@
<article role="main" id="furo-main-content">
<section id="programs-using-reticulum">
<span id="software-main"></span><h1>Programs Using Reticulum<a class="headerlink" href="#programs-using-reticulum" title="Link to this heading"></a></h1>
<p>This chapter provides a non-exhaustive list of notable programs, systems and application-layer
protocols that have been built using Reticulum.</p>
<p>These programs will let you get a feel for how Reticulum works. Most of them have been designed
to run well even over slow networks based on LoRa or packet radio, but all can also be used over fast
links, such as local WiFi, wired Ethernet, the Internet, or any combination.</p>
<p>As such, it is easy to get started experimenting, without having to set up any radio
transceivers or infrastructure just to try it out. Launching the programs on separate
devices connected to the same WiFi network is enough to get started, and physical
radio interfaces can then be added later.</p>
<section id="programs-utilities">
<h2>Programs &amp; Utilities<a class="headerlink" href="#programs-utilities" title="Link to this heading"></a></h2>
<p>Many different applications using Reticulum already exist, serving a wide variety of purposes
from day-to-day communication and information sharing to systems administration and tackling
advanced networking and communications challenges.</p>
<p>Development of Reticulum-based applications and systems is ongoing, so consider this list
a non-exhaustive starting point of <em>some</em> of the options available. With a bit of searching,
primarily over Reticulum itself, you will find many more interesting things.</p>
<section id="remote-shell">
<h3>Remote Shell<a class="headerlink" href="#remote-shell" title="Link to this heading"></a></h3>
<p>The <a class="reference external" href="https://github.com/acehoss/rnsh">rnsh</a> program lets you establish fully interactive
remote shell sessions over Reticulum. It also allows you to pipe any program to or from a
remote system, and is similar to how <code class="docutils literal notranslate"><span class="pre">ssh</span></code> works. The <code class="docutils literal notranslate"><span class="pre">rnsh</span></code> program is very efficient, and
can facilitate fully interactive shell sessions, even over extremely low-bandwidth links,
such as LoRa or packet radio.</p>
<p>In addition to the default, fully interactive terminal mode,
for extremely limited links, <code class="docutils literal notranslate"><span class="pre">rnsh</span></code> offers line-interactive mode, allowing you to interact
with remote systems, even when link throughput is counted in a few hundreds of bits per second.</p>
</section>
<p>This chapter provides a non-exhaustive list of notable programs, systems and application-layer protocols that have been built using Reticulum.</p>
<p>Many different applications using Reticulum already exist, serving a wide variety of purposes from day-to-day communication and information sharing to systems administration and tackling advanced networking and communications challenges.</p>
<div class="admonition tip">
<p class="admonition-title">Tip</p>
<p>For ease of discovery while reading this manual over the web or as an e-book, links provided in this chapter primarily point to repositories and pages located on internet servers. In many cases, these are public web mirrors, with the upstream repositories residing on Reticulum nodes. For the latest source, updates and information regarding any project, be sure to check their Nomad Network or <code class="docutils literal notranslate"><span class="pre">rngit</span></code> nodes.</p>
</div>
<p>These programs will let you get a feel for how Reticulum works. Most of them have been designed to run well even over slow networks based on LoRa or packet radio, but all can also be used over fast links, such as local WiFi, wired Ethernet, the Internet, or any combination.</p>
<p>As such, it is easy to get started experimenting, without having to set up any radio transceivers or infrastructure just to try it out. Launching the programs on separate devices connected to the same WiFi network is enough to get started, and physical radio interfaces can then be added later.</p>
<p>Development of Reticulum-based applications and systems is ongoing, so consider this list a non-exhaustive starting point of <em>some</em> of the options available. With a bit of searching, primarily over Reticulum itself, you will find many more interesting things.</p>
<section id="browsing-publishing">
<h2>Browsing &amp; Publishing<a class="headerlink" href="#browsing-publishing" title="Link to this heading"></a></h2>
<p>In addition to the programs listed in this section, other Nomad Network clients include:</p>
<ul class="simple">
<li><p><a class="reference external" href="https://meshchatx.com/">MeshChatX</a></p></li>
<li><p><a class="reference external" href="https://github.com/torlando-tech/columba/">Columba</a></p></li>
</ul>
<section id="nomad-network">
<h3>Nomad Network<a class="headerlink" href="#nomad-network" title="Link to this heading"></a></h3>
<p>The terminal-based program <a class="reference external" href="https://github.com/markqvist/nomadnet">Nomad Network</a>
provides a complete encrypted communications suite built with Reticulum. It features
encrypted messaging (both direct and delayed-delivery for offline users), file sharing,
and has a built-in text-browser and page server with support for dynamically rendered pages,
user authentication and more.</p>
<a class="reference external image-reference" href="https://github.com/markqvist/nomadnet"><img alt="_images/nomadnet_3.png" src="_images/nomadnet_3.png" />
<p>The terminal-based program <a class="reference external" href="https://github.com/markqvist/nomadnet">Nomad Network</a> provides a complete encrypted communications suite built with Reticulum.</p>
<a class="reference external image-reference" href="https://github.com/markqvist/nomadnet"><img alt="_images/nomadnet_6.webp" class="align-center" src="_images/nomadnet_6.webp" />
</a>
<p><a class="reference external" href="https://github.com/markqvist/nomadnet">Nomad Network</a> is a user-facing client
for the messaging and information-sharing protocol LXMF.</p>
<p>It features encrypted LXMF messaging (both direct and delayed-delivery for offline users), file sharing, and has a built-in text-browser and page server with support for dynamically rendered pages, user authentication and more. It also includes an RRC client and a suite of network utilities.</p>
</section>
<section id="ren-browser">
<h3>Ren Browser<a class="headerlink" href="#ren-browser" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://github.com/Quad4-Software/Ren-Browser">Ren Browser</a> is a modern, standalone browser for Reticulum Network using the <a class="reference external" href="https://github.com/Quad4-Software/Reticulum-Go">Reticulum-Go</a> stack. The project actively being developed, and should be considered alpha level software, but much of the functionality is already working. If you want to help expanding the ecosystem, this is an excellent project to take a look at.</p>
<a class="reference external image-reference" href="https://github.com/fr33n0w/rBrowser"><img alt="_images/ren_browser.webp" class="align-center" src="_images/ren_browser.webp" />
</a>
<p>Ren Browser is great example of an application aiming for true, seamless interoperability with the existing software ecosystem. It can operate fully standalone using it’s embedded <a class="reference external" href="https://github.com/Quad4-Software/Reticulum-Go">Go implementation</a> of Reticulum, or seamlessly utilise a shared RNS instance already running on the system.</p>
</section>
<section id="rns-page-node">
<h3>RNS Page Node<a class="headerlink" href="#rns-page-node" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://git.quad4.io/RNS-Things/rns-page-node">RNS Page Node</a> is a simple way to serve pages and files to any other Nomad Network compatible client. Drop-in replacement for NomadNet nodes that primarily serve pages and files.</p>
<p><a class="reference external" href="https://github.com/Quad4-Software/rns-page-node">RNS Page Node</a> is a simple way to serve pages and files to any other Nomad Network compatible client. Drop-in replacement for NomadNet nodes that primarily serve pages and files.</p>
</section>
<section id="retipedia">
<h3>Retipedia<a class="headerlink" href="#retipedia" title="Link to this heading"></a></h3>
<p>You can host the entirity of Wikipedia (or any <code class="docutils literal notranslate"><span class="pre">.zim</span></code>) file to other Nomad Network clients using <a class="reference external" href="https://github.com/RFnexus/Retipedia">Retipedia</a>.</p>
<p>You can host the entirity of Wikipedia, StackExchange or any other <code class="docutils literal notranslate"><span class="pre">.zim</span></code> file, to Nomad Network clients using <a class="reference external" href="https://github.com/RFnexus/Retipedia">Retipedia</a>.</p>
<a class="reference external image-reference" href="https://github.com/RFnexus/Retipedia"><img alt="_images/retipedia.webp" class="align-center" src="_images/retipedia.webp" />
</a>
</section>
<section id="git-over-reticulum">
<h3>Git Over Reticulum<a class="headerlink" href="#git-over-reticulum" title="Link to this heading"></a></h3>
<p>The included <a class="reference internal" href="git.html#git-main"><span class="std std-ref">rngit</span></a> system provides a fully distributed solution for managing, hosting, collaborating on and interacting with Git repositories over Reticulum.</p>
<img alt="_images/rngit.webp" class="align-center" src="_images/rngit.webp" />
</section>
</section>
<section id="messaging-voice">
<h2>Messaging &amp; Voice<a class="headerlink" href="#messaging-voice" title="Link to this heading"></a></h2>
<section id="sideband">
<h3>Sideband<a class="headerlink" href="#sideband" title="Link to this heading"></a></h3>
<p>If you would rather use an LXMF client with a graphical user interface, you can take
a look at <a class="reference external" href="https://unsigned.io/sideband">Sideband</a>, which is available for Android,
Linux, macOS and Windows. Sideband is an advanced LXMF and LXST client, and a multi-purpose Reticulum
utility, with features and functionality targeted at advanced users.</p>
<a class="reference external image-reference" href="https://unsigned.io/sideband"><img alt="_images/sideband_devices.webp" class="align-center" src="_images/sideband_devices.webp" />
<p><a class="reference external" href="https://github.com/markqvist/Sideband">Sideband</a> is a technical LXMF and LXST client, for Android, Linux, macOS and Windows. It also serves as a multi-purpose Reticulum utility, with features and functionality targeted at advanced users.</p>
<a class="reference external image-reference" href="https://github.com/markqvist/Sideband"><img alt="_images/sideband_devices.webp" class="align-center" src="_images/sideband_devices.webp" />
</a>
<p>Sideband allows you to communicate with other people or LXMF-compatible
systems over Reticulum networks using LoRa, Packet Radio, WiFi, I2P, Encrypted QR
Paper Messages, or anything else Reticulum supports.</p>
<p>It also interoperates with all other LXMF clients, and provides advanced features such as voice messaging,
real-time voice calls, file attachments, private telemetry sharing, and a full
plugin system for expandability.</p>
<p>Sideband allows you to communicate with other people or LXMF-compatible systems over Reticulum networks using LoRa, Packet Radio, WiFi, I2P, Encrypted QR Paper Messages, or anything else Reticulum supports.</p>
<p>It interoperates with all other LXMF clients, and provides advanced features such as PTT and voice messaging, real-time voice calls, file attachments, private telemetry sharing, and a full plugin system for expandability.</p>
</section>
<section id="meshchatx">
<h3>MeshChatX<a class="headerlink" href="#meshchatx" title="Link to this heading"></a></h3>
<p>A <a class="reference external" href="https://git.quad4.io/RNS-Things/MeshChatX">Reticulum MeshChat fork from the future</a>, with the goal of providing everything you need for Reticulum, LXMF, and LXST in one beautiful and feature-rich application. This project is separate from the original <a class="reference external" href="https://github.com/liamcottle/reticulum-meshchat">Reticulum MeshChat</a> project, and is not affiliated with the original project, but is a much more up-to-date, comprehensive and well-maintained fork.</p>
<a class="reference external image-reference" href="https://git.quad4.io/RNS-Things/MeshChatX"><img alt="_images/meshchatx.webp" class="align-center" src="_images/meshchatx.webp" />
<section id="id6">
<h3>MeshChatX<a class="headerlink" href="#id6" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://meshchatx.com/">MeshChatX</a> is an all-in-one Reticulum client with messaging, calling, and a NomadNet browser, providing everything you need for Reticulum, LXMF, and LXST in one beautiful and feature-rich application.</p>
<a class="reference external image-reference" href="https://meshchatx.com/"><img alt="_images/meshchatx.webp" class="align-center" src="_images/meshchatx.webp" />
</a>
<p>Features include full LXST support, custom voicemail, phonebook, contact sharing, and ringtone support, multi-identity handling, modern UI/UX, offline documentation, expanded tools, page archiving, integrated maps, telemetry and improved application security.</p>
<p>Features include full LXST support, custom voicemail, phonebook, contact sharing, ringtone support, multi-identity handling, modern UI/UX, offline documentation, expanded tools, page archiving, integrated maps, telemetry and improved application security.</p>
</section>
<section id="id8">
<h3>Columba<a class="headerlink" href="#id8" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://github.com/torlando-tech/columba/">Columba</a> is a simple and familiar LXMF messaging app Android, built with a native Android interface and Material Design 3. It also includes LXST voice call functionality, and a mobile Nomad Network page browser.</p>
<a class="reference external image-reference" href="https://github.com/torlando-tech/columba/"><img alt="_images/columba.webp" class="align-center" src="_images/columba.webp" />
</a>
</section>
<section id="ren-tui">
<h3>Ren TUI<a class="headerlink" href="#ren-tui" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://github.com/Quad4-Software/Ren-TUI">Ren TUI</a> is an early prototype terminal LXMF client for Reticulum built with Odin on librns (Reticulum-Go). It aims for NomadNet-like messaging/browsing without urwid or ncurses.</p>
<a class="reference external image-reference" href="https://github.com/Quad4-Software/Ren-TUI"><img alt="_images/rentui.webp" class="align-center" src="_images/rentui.webp" />
</a>
</section>
</section>
<section id="chat">
<h2>Chat<a class="headerlink" href="#chat" title="Link to this heading"></a></h2>
<section id="reticulum-relay-chat">
<h3>Reticulum Relay Chat<a class="headerlink" href="#reticulum-relay-chat" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://rrc.kc1awv.net/">Reticulum Relay Chat</a> is a live chat system built on top of the Reticulum Network Stack. It exists to let people talk to each other in real time over Reticulum without dragging in message databases, synchronization engines, or architectural commitments they did not ask for.</p>
<p>The <a class="reference external" href="https://github.com/kc1awv/rrcd">rrcd</a> program provides a functional, reference RRC hub-server daemon implementation. RRC user clients include <a class="reference external" href="https://github.com/kc1awv/rrc-gui">rrc-gui</a> and <a class="reference external" href="https://github.com/kc1awv/rrc-web">rrc-web</a>.</p>
<img alt="_images/rrc.webp" class="align-center" src="_images/rrc.webp" />
<p>RRC is closer in spirit to IRC than to modern “everything platforms.” You connect, you join a room, you talk, and then you leave. If you were present, you saw the conversation. If you were not, the conversation did not wait for you. This is not an accident. This is the entire design.</p>
<p>The <a class="reference external" href="https://github.com/kc1awv/rrcd">rrcd</a> program provides a functional, reference RRC hub-server daemon implementation. RRC user clients include:</p>
<ul class="simple">
<li><p><a class="reference external" href="https://github.com/markqvist/NomadNet/">Nomad Network</a></p></li>
<li><p><a class="reference external" href="https://meshchatx.com/">MeshChatX</a></p></li>
<li><p><a class="reference external" href="https://github.com/torlando-tech/eridanus">Eridanus</a></p></li>
<li><p><a class="reference external" href="https://github.com/kc1awv/rrc-gui">rrc-gui</a></p></li>
<li><p><a class="reference external" href="https://github.com/kc1awv/rrc-web">rrc-web</a></p></li>
</ul>
</section>
<section id="retibbs">
<h3>RetiBBS<a class="headerlink" href="#retibbs" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://github.com/kc1awv/RetiBBS">RetiBBS</a> is a bulletin board system implementation for Reticulum networks.</p>
<p><a class="reference external" href="https://github.com/kc1awv/RetiBBS">RetiBBS</a> is an old-school bulletin board system implementation for Reticulum networks.</p>
<a class="reference external image-reference" href="https://github.com/kc1awv/RetiBBS"><img alt="_images/retibbs.webp" class="align-center" src="_images/retibbs.webp" />
</a>
<p>RetiBBS allows users to communicate through message boards in a secure manner.</p>
</section>
<section id="rbrowser">
<h3>RBrowser<a class="headerlink" href="#rbrowser" title="Link to this heading"></a></h3>
<p>The <a class="reference external" href="https://github.com/fr33n0w/rBrowser">rBrowser</a> program is a cross-platform, standalone, web-based browser for exploring NomadNetwork Nodes over Reticulum Network. It automatically discovers NomadNet nodes through network announces and provides a user-friendly interface for browsing distributed content with Micron markup support.</p>
<a class="reference external image-reference" href="https://github.com/fr33n0w/rBrowser"><img alt="_images/rbrowser.webp" class="align-center" src="_images/rbrowser.webp" />
</a>
<p>Includes useful features like automatic listening for announce, adding nodes to favorites, browsing and rendering any kind of NomadNet links, downloading files from remote nodes, a unique local NomadNet Search Engine and more.</p>
</section>
<section id="voice-telephony">
<h2>Voice &amp; Telephony<a class="headerlink" href="#voice-telephony" title="Link to this heading"></a></h2>
<p>In addition to the programs listed in this section, other LXST voice clients include:</p>
<ul class="simple">
<li><p><a class="reference external" href="https://github.com/markqvist/Sideband">Sideband</a></p></li>
<li><p><a class="reference external" href="https://meshchatx.com/">MeshChatX</a></p></li>
<li><p><a class="reference external" href="https://github.com/torlando-tech/columba/">Columba</a></p></li>
</ul>
<section id="reticulum-network-telephone">
<h3>Reticulum Network Telephone<a class="headerlink" href="#reticulum-network-telephone" title="Link to this heading"></a></h3>
<p>The <code class="docutils literal notranslate"><span class="pre">rnphone</span></code> program, included as part of the <a class="reference external" href="https://github.com/markqvist/LXST">LXST</a> package is a command-line Reticulum telephone utility and daemon, that allows building physical, hardware telephones for LXST and Reticulum, as well as simply performing calls via the command line.</p>
@ -362,34 +380,75 @@ plugin system for expandability.</p>
</a>
<p>It supports interfacing directly with hardware peripherals such as GPIO keypads and LCD displays, providing a modular system for building secure hardware telephones.</p>
</section>
<section id="partyline">
<h3>Partyline<a class="headerlink" href="#partyline" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://github.com/RFnexus/partyline">Partyline</a> is a group voice application for Reticulum, built on <a class="reference external" href="https://github.com/markqvist/LXST">LXST</a>, inspired by <a class="reference external" href="https://github.com/mumble-voip/mumble">Mumble</a>.</p>
<a class="reference external image-reference" href="https://github.com/markqvist/LXST"><img alt="_images/partyline.webp" class="align-center" src="_images/partyline.webp" />
</a>
<p>It provides both realtime group voice over any Reticulum transport capable of &gt;6 kilobits per second, LXST dial-in support, listen-only music/broadcasting rooms, and many other useful functions.</p>
</section>
<section id="lxst-phone">
<h3>LXST Phone<a class="headerlink" href="#lxst-phone" title="Link to this heading"></a></h3>
<p>The <a class="reference external" href="https://github.com/kc1awv/lxst_phone">LXST Phone</a> program is a cross-platform desktop application for performing LXST voice calls over Reticulum.</p>
<p>The <a class="reference external" href="https://github.com/kc1awv/lxst_phone">LXST Phone</a> program is a cross-platform desktop application for performing LXST voice calls over Reticulum. It supports various advanced features such as SAS verification, peer blocking, rate limiting, encrypted call history storage and contact management.</p>
<a class="reference external image-reference" href="https://github.com/kc1awv/lxst_phone"><img alt="_images/lxst_phone.webp" class="align-center" src="_images/lxst_phone.webp" />
</a>
<p>It supports various advanced features such as SAS verification, peer blocking, rate limiting, encrypted call history storage and contact management.</p>
</section>
<section id="lxmfy">
<h3>LXMFy<a class="headerlink" href="#lxmfy" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://lxmfy.quad4.io/">LXMFy</a> is a comprehensive and advanced bot creation framework for LXMF, that allows building any kind of automation or bot system running over LXMF and Reticulum. <a class="reference external" href="https://github.com/lxmfy/awesome-lxmfy-bots">Bot implementations exist</a> for Home Assistant control, LLM integrations, and various other purposes.</p>
</section>
<section id="lxmf-interactive-client">
<h3>LXMF Interactive Client<a class="headerlink" href="#lxmf-interactive-client" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://github.com/fr33n0w/lxmf-cli">LXMF Interactive Client</a> is a feature-rich, terminal-based LXMF messaging client with many advanced features and an extensible plugin architecture.</p>
<section id="system-administration">
<h2>System Administration<a class="headerlink" href="#system-administration" title="Link to this heading"></a></h2>
<section id="remote-shell">
<h3>Remote Shell<a class="headerlink" href="#remote-shell" title="Link to this heading"></a></h3>
<p>The included <a class="reference internal" href="using.html#using-rnsh"><span class="std std-ref">rnsh</span></a> program lets you establish fully interactive
remote shell sessions over Reticulum. It also allows you to pipe any program to or from a
remote system, and is similar to how <code class="docutils literal notranslate"><span class="pre">ssh</span></code> works. The <code class="docutils literal notranslate"><span class="pre">rnsh</span></code> program is very efficient, and
can facilitate fully interactive shell sessions, even over extremely low-bandwidth links,
such as LoRa or packet radio.</p>
<p>In addition to the default, fully interactive terminal mode, for extremely limited links,
<code class="docutils literal notranslate"><span class="pre">rnsh</span></code> offers line-interactive mode, allowing you to interact with remote systems, even
when link throughput is counted in a few hundreds of bits per second.</p>
</section>
<section id="rns-filesync">
<h3>RNS FileSync<a class="headerlink" href="#rns-filesync" title="Link to this heading"></a></h3>
<p>The <a class="reference external" href="https://git.quad4.io/RNS-Things/RNS-Filesync">RNS FileSync</a> program enables automatic file synchronization between devices without requiring central servers, internet connectivity, or cloud services. It works over any network medium supported by Reticulum, including radio, LoRa, WiFi, or the internet, making it ideal for off-grid, privacy-focused, and resilient file sharing.</p>
<p>The <a class="reference external" href="https://github.com/Quad4-Software/RNS-Filesync">RNS FileSync</a> program enables automatic file synchronization between devices without requiring central servers, internet connectivity, or cloud services. It works over any network medium supported by Reticulum, including radio, LoRa, WiFi, or the internet, making it ideal for off-grid, privacy-focused, and resilient file sharing.</p>
</section>
</section>
<section id="utilities-components">
<h2>Utilities &amp; Components<a class="headerlink" href="#utilities-components" title="Link to this heading"></a></h2>
<section id="modem73">
<h3>Modem73<a class="headerlink" href="#modem73" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://github.com/RFnexus/modem73">MODEM73</a> and its companion <a class="reference external" href="https://github.com/RFnexus/modem73interface">Modem73Interface</a> is an open source software modem that works with any HF, VHF, or UHF radio capable of 2400 Hz of bandwidth. All you need is a sound card and audio cable for your radio.</p>
<a class="reference external image-reference" href="https://github.com/RFnexus/modem73"><img alt="_images/modem73.webp" class="align-center" src="_images/modem73.webp" />
</a>
</section>
<section id="lxmfy">
<h3>LXMFy<a class="headerlink" href="#lxmfy" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://lxmfy.quad4.io/">LXMFy</a> is a comprehensive and advanced bot creation framework for LXMF, that allows building any kind of automation or bot system running over LXMF and Reticulum. <a class="reference external" href="https://lxmfy.quad4.io/latest/creating-bots/">Bot implementations exist</a> for Home Assistant control, LLM integrations, and various other purposes.</p>
</section>
<section id="micron-parser-js">
<h3>Micron Parser JS<a class="headerlink" href="#micron-parser-js" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://github.com/RFnexus/micron-parser-js">Micron Parser JS</a> is the JavaScript-based parser for the Micron markup language, that most web-based Nomad Network browsers use. If you want to make utilities or tools that display Micron pages, this library is essential.</p>
</section>
<section id="reticulated">
<h3>Reticulated<a class="headerlink" href="#reticulated" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://github.com/RFnexus/Reticulated">Reticulated</a> is a Reticulum Network simulator that spawns live, interactive Reticulum instances controllable from a node-based Web UI.</p>
<a class="reference external image-reference" href="https://github.com/RFnexus/Reticulated"><img alt="_images/reticulated.webp" class="align-center" src="_images/reticulated.webp" />
</a>
<p>You can create networks of any topology and set bitrate, MTU, and configure path loss and propagation behavior. It provides a top-down view to a live network. You can connect any Reticulum application to the simulated network. It also has built in utilities like a basic LXMF chat function and Resource transfer included.</p>
</section>
<section id="rnmon">
<h3>RNMon<a class="headerlink" href="#rnmon" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://github.com/lbatalha/rnmon">RNMon</a> is a monitoring daemon designed to monitor the status of multiple RNS applications and push the metrics to an InfluxDB instance over the influx line protocol.</p>
</section>
</section>
<section id="device-flashers">
<h2>Device Flashers<a class="headerlink" href="#device-flashers" title="Link to this heading"></a></h2>
<p>In addition to the included command-line <code class="docutils literal notranslate"><span class="pre">rnodeconf</span></code> flasher, several community-provided RNode device flashers exist:</p>
<ul class="simple">
<li><p><a class="reference external" href="https://flasher.rns.moscow/">RNS Moscow</a></p></li>
<li><p><a class="reference external" href="https://flasher.aetherlab.org/">Aetherlab</a></p></li>
</ul>
<p>Several programs, such as <a class="reference external" href="https://github.com/markqvist/Sideband">Sideband</a> and <a class="reference external" href="https://meshchatx.com/">MeshChatX</a> also include built-in device flashers that can be used fully offline.</p>
</section>
<section id="protocols">
<h2>Protocols<a class="headerlink" href="#protocols" title="Link to this heading"></a></h2>
<p>A number of standard protocols have emerged through real-world usage and testing in the Reticulum community. While you may sometimes want to use completely custom protocols and implementations when writing Reticulum-based software, using these protocols provides application developers with an easy way to implement advanced functionality quickly and effortlessly. Using them also ensures compatibility and interoperability between many different client applications, creating an open communications ecosystem where users are free to choose the applications that suit their needs, while remaining connected to everyone else.</p>
@ -399,8 +458,8 @@ plugin system for expandability.</p>
<p>LXMF is efficient enough that it can deliver messages over extremely low-bandwidth systems such as packet radio or LoRa. Encrypted LXMF messages can also be encoded as QR-codes or text-based URIs, allowing completely analog paper message transport.</p>
<p>Using Propagation Nodes, LXMF also offer a way to store and forward messages to users or endpoints that are not directly reachable at the time of message emission.</p>
</section>
<section id="id16">
<h3>LXST<a class="headerlink" href="#id16" title="Link to this heading"></a></h3>
<section id="id30">
<h3>LXST<a class="headerlink" href="#id30" title="Link to this heading"></a></h3>
<p><a class="reference external" href="https://github.com/markqvist/lxst">LXST</a> is a simple and flexible real-time streaming format and delivery protocol that allows a wide variety of applications, while using as little bandwidth as possible. It is built on top of Reticulum and offers zero-conf stream routing, end-to-end encryption and Forward Secrecy, and can be transported over any kind of medium that Reticulum supports. It currently powers real-time voice and telephony applications over Reticulum.</p>
</section>
<section id="rrc">
@ -413,11 +472,11 @@ plugin system for expandability.</p>
<h2>Interface Modules &amp; Connectivity Resources<a class="headerlink" href="#interface-modules-connectivity-resources" title="Link to this heading"></a></h2>
<p>This section provides a list of various community-provided interface modules, guides and resources for creating Reticulum networks over special or challenging mediums.</p>
<ul class="simple">
<li><p>Custom interface module for running <a class="reference external" href="https://git.quad4.io/RNS-Things/RNS-over-HTTP">RNS over HTTP</a></p></li>
<li><p><a class="reference external" href="https://github.com/RFnexus/modem73">Modem73</a> is an efficient software modem that can be used with Reticulum</p></li>
<li><p>Custom interface module for running <a class="reference external" href="https://github.com/Quad4-Software/RNS-over-HTTP">RNS over HTTP</a></p></li>
<li><p>Guide for running <a class="reference external" href="https://github.com/matvik22000/rns-over-icmp">Reticulum over ICMP</a> using <code class="docutils literal notranslate"><span class="pre">PipeInterface</span></code></p></li>
<li><p>Guide for running <a class="reference external" href="https://github.com/markqvist/Reticulum/discussions/1002">Reticulum over DNS</a> with Iodine</p></li>
<li><p>Guide for running <a class="reference external" href="https://github.com/RFnexus/reticulum-over-hf">Reticulum over HF radio</a></p></li>
<li><p><a class="reference external" href="https://github.com/RFnexus/modem73">Modem73</a> is a KISS TNC OFDM modem frontend that can be used with Reticulum</p></li>
</ul>
</section>
</section>
@ -477,28 +536,49 @@ plugin system for expandability.</p>
<div class="toc-tree">
<ul>
<li><a class="reference internal" href="#">Programs Using Reticulum</a><ul>
<li><a class="reference internal" href="#programs-utilities">Programs &amp; Utilities</a><ul>
<li><a class="reference internal" href="#remote-shell">Remote Shell</a></li>
<li><a class="reference internal" href="#browsing-publishing">Browsing &amp; Publishing</a><ul>
<li><a class="reference internal" href="#nomad-network">Nomad Network</a></li>
<li><a class="reference internal" href="#ren-browser">Ren Browser</a></li>
<li><a class="reference internal" href="#rns-page-node">RNS Page Node</a></li>
<li><a class="reference internal" href="#retipedia">Retipedia</a></li>
<li><a class="reference internal" href="#git-over-reticulum">Git Over Reticulum</a></li>
</ul>
</li>
<li><a class="reference internal" href="#messaging-voice">Messaging &amp; Voice</a><ul>
<li><a class="reference internal" href="#sideband">Sideband</a></li>
<li><a class="reference internal" href="#meshchatx">MeshChatX</a></li>
<li><a class="reference internal" href="#id6">MeshChatX</a></li>
<li><a class="reference internal" href="#id8">Columba</a></li>
<li><a class="reference internal" href="#ren-tui">Ren TUI</a></li>
</ul>
</li>
<li><a class="reference internal" href="#chat">Chat</a><ul>
<li><a class="reference internal" href="#reticulum-relay-chat">Reticulum Relay Chat</a></li>
<li><a class="reference internal" href="#retibbs">RetiBBS</a></li>
<li><a class="reference internal" href="#rbrowser">RBrowser</a></li>
</ul>
</li>
<li><a class="reference internal" href="#voice-telephony">Voice &amp; Telephony</a><ul>
<li><a class="reference internal" href="#reticulum-network-telephone">Reticulum Network Telephone</a></li>
<li><a class="reference internal" href="#partyline">Partyline</a></li>
<li><a class="reference internal" href="#lxst-phone">LXST Phone</a></li>
<li><a class="reference internal" href="#lxmfy">LXMFy</a></li>
<li><a class="reference internal" href="#lxmf-interactive-client">LXMF Interactive Client</a></li>
</ul>
</li>
<li><a class="reference internal" href="#system-administration">System Administration</a><ul>
<li><a class="reference internal" href="#remote-shell">Remote Shell</a></li>
<li><a class="reference internal" href="#rns-filesync">RNS FileSync</a></li>
</ul>
</li>
<li><a class="reference internal" href="#utilities-components">Utilities &amp; Components</a><ul>
<li><a class="reference internal" href="#modem73">Modem73</a></li>
<li><a class="reference internal" href="#lxmfy">LXMFy</a></li>
<li><a class="reference internal" href="#micron-parser-js">Micron Parser JS</a></li>
<li><a class="reference internal" href="#reticulated">Reticulated</a></li>
<li><a class="reference internal" href="#rnmon">RNMon</a></li>
</ul>
</li>
<li><a class="reference internal" href="#device-flashers">Device Flashers</a></li>
<li><a class="reference internal" href="#protocols">Protocols</a><ul>
<li><a class="reference internal" href="#lxmf">LXMF</a></li>
<li><a class="reference internal" href="#id16">LXST</a></li>
<li><a class="reference internal" href="#id30">LXST</a></li>
<li><a class="reference internal" href="#rrc">RRC</a></li>
</ul>
</li>

View file

@ -873,7 +873,7 @@ options:
<p>The <code class="docutils literal notranslate"><span class="pre">rnx</span></code> utility is a basic remote command execution program. It allows you to
execute commands on remote systems over Reticulum, and to view returned command
output. For a fully interactive remote shell solution, be sure to also take a look
at the <a class="reference external" href="https://github.com/acehoss/rnsh">rnsh</a> program.</p>
at the <a class="reference internal" href="#using-rnsh"><span class="std std-ref">rnsh</span></a> program.</p>
<p><strong>Usage Examples</strong></p>
<p>Run rnx on the listening system, specifying which identities are allowed to execute commands:</p>
<div class="highlight-text notranslate"><div class="highlight"><pre><span></span>$ rnx --listen -a 941bed5e228775e5a8079fc38b1ccf3f -a 1b03013c25f1c2ca068a4f080b844a10
@ -928,7 +928,7 @@ optional arguments:
</div>
</section>
<section id="the-rnsh-utility">
<h3>The rnsh Utility<a class="headerlink" href="#the-rnsh-utility" title="Link to this heading"></a></h3>
<span id="using-rnsh"></span><h3>The rnsh Utility<a class="headerlink" href="#the-rnsh-utility" title="Link to this heading"></a></h3>
<p>The <code class="docutils literal notranslate"><span class="pre">rnsh</span></code> utility provides a fully interactive remote shell over Reticulum.
It allows you to establish encrypted, authenticated shell sessions on remote
systems, complete with terminal emulation, pipe support, and window resizing.</p>

View file

@ -75,26 +75,37 @@ to participate in the development of Reticulum itself.
* [The Work Is Finished](zen.md#the-work-is-finished)
* [Open Sky](zen.md#open-sky)
* [Programs Using Reticulum](software.md)
* [Programs & Utilities](software.md#programs-utilities)
* [Remote Shell](software.md#remote-shell)
* [Browsing & Publishing](software.md#browsing-publishing)
* [Nomad Network](software.md#nomad-network)
* [Ren Browser](software.md#ren-browser)
* [RNS Page Node](software.md#rns-page-node)
* [Retipedia](software.md#retipedia)
* [Git Over Reticulum](software.md#git-over-reticulum)
* [Messaging & Voice](software.md#messaging-voice)
* [Sideband](software.md#sideband)
* [MeshChatX](software.md#meshchatx)
* [MeshChatX](software.md#id6)
* [Columba](software.md#id8)
* [Ren TUI](software.md#ren-tui)
* [Chat](software.md#chat)
* [Reticulum Relay Chat](software.md#reticulum-relay-chat)
* [RetiBBS](software.md#retibbs)
* [RBrowser](software.md#rbrowser)
* [Voice & Telephony](software.md#voice-telephony)
* [Reticulum Network Telephone](software.md#reticulum-network-telephone)
* [Partyline](software.md#partyline)
* [LXST Phone](software.md#lxst-phone)
* [LXMFy](software.md#lxmfy)
* [LXMF Interactive Client](software.md#lxmf-interactive-client)
* [System Administration](software.md#system-administration)
* [Remote Shell](software.md#remote-shell)
* [RNS FileSync](software.md#rns-filesync)
* [Utilities & Components](software.md#utilities-components)
* [Modem73](software.md#modem73)
* [LXMFy](software.md#lxmfy)
* [Micron Parser JS](software.md#micron-parser-js)
* [Reticulated](software.md#reticulated)
* [RNMon](software.md#rnmon)
* [Device Flashers](software.md#device-flashers)
* [Protocols](software.md#protocols)
* [LXMF](software.md#lxmf)
* [LXST](software.md#id16)
* [LXST](software.md#id30)
* [RRC](software.md#rrc)
* [Interface Modules & Connectivity Resources](software.md#interface-modules-connectivity-resources)
* [Using Reticulum on Your System](using.md)

View file

@ -1,100 +1,99 @@
# Programs Using Reticulum
This chapter provides a non-exhaustive list of notable programs, systems and application-layer
protocols that have been built using Reticulum.
This chapter provides a non-exhaustive list of notable programs, systems and application-layer protocols that have been built using Reticulum.
These programs will let you get a feel for how Reticulum works. Most of them have been designed
to run well even over slow networks based on LoRa or packet radio, but all can also be used over fast
links, such as local WiFi, wired Ethernet, the Internet, or any combination.
Many different applications using Reticulum already exist, serving a wide variety of purposes from day-to-day communication and information sharing to systems administration and tackling advanced networking and communications challenges.
As such, it is easy to get started experimenting, without having to set up any radio
transceivers or infrastructure just to try it out. Launching the programs on separate
devices connected to the same WiFi network is enough to get started, and physical
radio interfaces can then be added later.
These programs will let you get a feel for how Reticulum works. Most of them have been designed to run well even over slow networks based on LoRa or packet radio, but all can also be used over fast links, such as local WiFi, wired Ethernet, the Internet, or any combination.
## Programs & Utilities
As such, it is easy to get started experimenting, without having to set up any radio transceivers or infrastructure just to try it out. Launching the programs on separate devices connected to the same WiFi network is enough to get started, and physical radio interfaces can then be added later.
Many different applications using Reticulum already exist, serving a wide variety of purposes
from day-to-day communication and information sharing to systems administration and tackling
advanced networking and communications challenges.
Development of Reticulum-based applications and systems is ongoing, so consider this list a non-exhaustive starting point of *some* of the options available. With a bit of searching, primarily over Reticulum itself, you will find many more interesting things.
Development of Reticulum-based applications and systems is ongoing, so consider this list
a non-exhaustive starting point of *some* of the options available. With a bit of searching,
primarily over Reticulum itself, you will find many more interesting things.
## Browsing & Publishing
### Remote Shell
In addition to the programs listed in this section, other Nomad Network clients include:
The [rnsh](https://github.com/acehoss/rnsh) program lets you establish fully interactive
remote shell sessions over Reticulum. It also allows you to pipe any program to or from a
remote system, and is similar to how `ssh` works. The `rnsh` program is very efficient, and
can facilitate fully interactive shell sessions, even over extremely low-bandwidth links,
such as LoRa or packet radio.
In addition to the default, fully interactive terminal mode,
for extremely limited links, `rnsh` offers line-interactive mode, allowing you to interact
with remote systems, even when link throughput is counted in a few hundreds of bits per second.
- [MeshChatX](https://meshchatx.com/)
- [Columba](https://github.com/torlando-tech/columba/)
### Nomad Network
The terminal-based program [Nomad Network](https://github.com/markqvist/nomadnet)
provides a complete encrypted communications suite built with Reticulum. It features
encrypted messaging (both direct and delayed-delivery for offline users), file sharing,
and has a built-in text-browser and page server with support for dynamically rendered pages,
user authentication and more.
The terminal-based program [Nomad Network](https://github.com/markqvist/nomadnet) provides a complete encrypted communications suite built with Reticulum.
[![image](screenshots/nomadnet_3.png)](https://github.com/markqvist/nomadnet)
It features encrypted LXMF messaging (both direct and delayed-delivery for offline users), file sharing, and has a built-in text-browser and page server with support for dynamically rendered pages, user authentication and more. It also includes an RRC client and a suite of network utilities.
[Nomad Network](https://github.com/markqvist/nomadnet) is a user-facing client
for the messaging and information-sharing protocol LXMF.
### Ren Browser
[Ren Browser](https://github.com/Quad4-Software/Ren-Browser) is a modern, standalone browser for Reticulum Network using the [Reticulum-Go](https://github.com/Quad4-Software/Reticulum-Go) stack. The project actively being developed, and should be considered alpha level software, but much of the functionality is already working. If you want to help expanding the ecosystem, this is an excellent project to take a look at.
Ren Browser is great example of an application aiming for true, seamless interoperability with the existing software ecosystem. It can operate fully standalone using it’s embedded [Go implementation](https://github.com/Quad4-Software/Reticulum-Go) of Reticulum, or seamlessly utilise a shared RNS instance already running on the system.
### RNS Page Node
[RNS Page Node](https://git.quad4.io/RNS-Things/rns-page-node) is a simple way to serve pages and files to any other Nomad Network compatible client. Drop-in replacement for NomadNet nodes that primarily serve pages and files.
[RNS Page Node](https://github.com/Quad4-Software/rns-page-node) is a simple way to serve pages and files to any other Nomad Network compatible client. Drop-in replacement for NomadNet nodes that primarily serve pages and files.
### Retipedia
You can host the entirity of Wikipedia (or any `.zim`) file to other Nomad Network clients using [Retipedia](https://github.com/RFnexus/Retipedia).
You can host the entirity of Wikipedia, StackExchange or any other `.zim` file, to Nomad Network clients using [Retipedia](https://github.com/RFnexus/Retipedia).
### Git Over Reticulum
The included [rngit](git.md#git-main) system provides a fully distributed solution for managing, hosting, collaborating on and interacting with Git repositories over Reticulum.
## Messaging & Voice
### Sideband
If you would rather use an LXMF client with a graphical user interface, you can take
a look at [Sideband](https://unsigned.io/sideband), which is available for Android,
Linux, macOS and Windows. Sideband is an advanced LXMF and LXST client, and a multi-purpose Reticulum
utility, with features and functionality targeted at advanced users.
[Sideband](https://github.com/markqvist/Sideband) is a technical LXMF and LXST client, for Android, Linux, macOS and Windows. It also serves as a multi-purpose Reticulum utility, with features and functionality targeted at advanced users.
Sideband allows you to communicate with other people or LXMF-compatible
systems over Reticulum networks using LoRa, Packet Radio, WiFi, I2P, Encrypted QR
Paper Messages, or anything else Reticulum supports.
Sideband allows you to communicate with other people or LXMF-compatible systems over Reticulum networks using LoRa, Packet Radio, WiFi, I2P, Encrypted QR Paper Messages, or anything else Reticulum supports.
It also interoperates with all other LXMF clients, and provides advanced features such as voice messaging,
real-time voice calls, file attachments, private telemetry sharing, and a full
plugin system for expandability.
It interoperates with all other LXMF clients, and provides advanced features such as PTT and voice messaging, real-time voice calls, file attachments, private telemetry sharing, and a full plugin system for expandability.
### MeshChatX
A [Reticulum MeshChat fork from the future](https://git.quad4.io/RNS-Things/MeshChatX), with the goal of providing everything you need for Reticulum, LXMF, and LXST in one beautiful and feature-rich application. This project is separate from the original [Reticulum MeshChat](https://github.com/liamcottle/reticulum-meshchat) project, and is not affiliated with the original project, but is a much more up-to-date, comprehensive and well-maintained fork.
[MeshChatX](https://meshchatx.com/) is an all-in-one Reticulum client with messaging, calling, and a NomadNet browser, providing everything you need for Reticulum, LXMF, and LXST in one beautiful and feature-rich application.
Features include full LXST support, custom voicemail, phonebook, contact sharing, and ringtone support, multi-identity handling, modern UI/UX, offline documentation, expanded tools, page archiving, integrated maps, telemetry and improved application security.
Features include full LXST support, custom voicemail, phonebook, contact sharing, ringtone support, multi-identity handling, modern UI/UX, offline documentation, expanded tools, page archiving, integrated maps, telemetry and improved application security.
### Columba
[Columba](https://github.com/torlando-tech/columba/) is a simple and familiar LXMF messaging app Android, built with a native Android interface and Material Design 3. It also includes LXST voice call functionality, and a mobile Nomad Network page browser.
### Ren TUI
[Ren TUI](https://github.com/Quad4-Software/Ren-TUI) is an early prototype terminal LXMF client for Reticulum built with Odin on librns (Reticulum-Go). It aims for NomadNet-like messaging/browsing without urwid or ncurses.
## Chat
### Reticulum Relay Chat
[Reticulum Relay Chat](https://rrc.kc1awv.net/) is a live chat system built on top of the Reticulum Network Stack. It exists to let people talk to each other in real time over Reticulum without dragging in message databases, synchronization engines, or architectural commitments they did not ask for.
The [rrcd](https://github.com/kc1awv/rrcd) program provides a functional, reference RRC hub-server daemon implementation. RRC user clients include [rrc-gui](https://github.com/kc1awv/rrc-gui) and [rrc-web](https://github.com/kc1awv/rrc-web).
RRC is closer in spirit to IRC than to modern “everything platforms.” You connect, you join a room, you talk, and then you leave. If you were present, you saw the conversation. If you were not, the conversation did not wait for you. This is not an accident. This is the entire design.
The [rrcd](https://github.com/kc1awv/rrcd) program provides a functional, reference RRC hub-server daemon implementation. RRC user clients include:
- [Nomad Network](https://github.com/markqvist/NomadNet/)
- [MeshChatX](https://meshchatx.com/)
- [Eridanus](https://github.com/torlando-tech/eridanus)
- [rrc-gui](https://github.com/kc1awv/rrc-gui)
- [rrc-web](https://github.com/kc1awv/rrc-web)
### RetiBBS
[RetiBBS](https://github.com/kc1awv/RetiBBS) is a bulletin board system implementation for Reticulum networks.
[RetiBBS](https://github.com/kc1awv/RetiBBS) is an old-school bulletin board system implementation for Reticulum networks.
RetiBBS allows users to communicate through message boards in a secure manner.
### RBrowser
## Voice & Telephony
The [rBrowser](https://github.com/fr33n0w/rBrowser) program is a cross-platform, standalone, web-based browser for exploring NomadNetwork Nodes over Reticulum Network. It automatically discovers NomadNet nodes through network announces and provides a user-friendly interface for browsing distributed content with Micron markup support.
In addition to the programs listed in this section, other LXST voice clients include:
Includes useful features like automatic listening for announce, adding nodes to favorites, browsing and rendering any kind of NomadNet links, downloading files from remote nodes, a unique local NomadNet Search Engine and more.
- [Sideband](https://github.com/markqvist/Sideband)
- [MeshChatX](https://meshchatx.com/)
- [Columba](https://github.com/torlando-tech/columba/)
### Reticulum Network Telephone
@ -102,32 +101,67 @@ The `rnphone` program, included as part of the [LXST](https://github.com/markqvi
It supports interfacing directly with hardware peripherals such as GPIO keypads and LCD displays, providing a modular system for building secure hardware telephones.
### Partyline
[Partyline](https://github.com/RFnexus/partyline) is a group voice application for Reticulum, built on [LXST](https://github.com/markqvist/LXST), inspired by [Mumble](https://github.com/mumble-voip/mumble).
It provides both realtime group voice over any Reticulum transport capable of >6 kilobits per second, LXST dial-in support, listen-only music/broadcasting rooms, and many other useful functions.
### LXST Phone
The [LXST Phone](https://github.com/kc1awv/lxst_phone) program is a cross-platform desktop application for performing LXST voice calls over Reticulum.
The [LXST Phone](https://github.com/kc1awv/lxst_phone) program is a cross-platform desktop application for performing LXST voice calls over Reticulum. It supports various advanced features such as SAS verification, peer blocking, rate limiting, encrypted call history storage and contact management.
It supports various advanced features such as SAS verification, peer blocking, rate limiting, encrypted call history storage and contact management.
## System Administration
### LXMFy
### Remote Shell
[LXMFy](https://lxmfy.quad4.io/) is a comprehensive and advanced bot creation framework for LXMF, that allows building any kind of automation or bot system running over LXMF and Reticulum. [Bot implementations exist](https://github.com/lxmfy/awesome-lxmfy-bots) for Home Assistant control, LLM integrations, and various other purposes.
The included [rnsh](using.md#using-rnsh) program lets you establish fully interactive
remote shell sessions over Reticulum. It also allows you to pipe any program to or from a
remote system, and is similar to how `ssh` works. The `rnsh` program is very efficient, and
can facilitate fully interactive shell sessions, even over extremely low-bandwidth links,
such as LoRa or packet radio.
### LXMF Interactive Client
[LXMF Interactive Client](https://github.com/fr33n0w/lxmf-cli) is a feature-rich, terminal-based LXMF messaging client with many advanced features and an extensible plugin architecture.
In addition to the default, fully interactive terminal mode, for extremely limited links,
`rnsh` offers line-interactive mode, allowing you to interact with remote systems, even
when link throughput is counted in a few hundreds of bits per second.
### RNS FileSync
The [RNS FileSync](https://git.quad4.io/RNS-Things/RNS-Filesync) program enables automatic file synchronization between devices without requiring central servers, internet connectivity, or cloud services. It works over any network medium supported by Reticulum, including radio, LoRa, WiFi, or the internet, making it ideal for off-grid, privacy-focused, and resilient file sharing.
The [RNS FileSync](https://github.com/Quad4-Software/RNS-Filesync) program enables automatic file synchronization between devices without requiring central servers, internet connectivity, or cloud services. It works over any network medium supported by Reticulum, including radio, LoRa, WiFi, or the internet, making it ideal for off-grid, privacy-focused, and resilient file sharing.
## Utilities & Components
### Modem73
[MODEM73](https://github.com/RFnexus/modem73) and its companion [Modem73Interface](https://github.com/RFnexus/modem73interface) is an open source software modem that works with any HF, VHF, or UHF radio capable of 2400 Hz of bandwidth. All you need is a sound card and audio cable for your radio.
### LXMFy
[LXMFy](https://lxmfy.quad4.io/) is a comprehensive and advanced bot creation framework for LXMF, that allows building any kind of automation or bot system running over LXMF and Reticulum. [Bot implementations exist](https://lxmfy.quad4.io/latest/creating-bots/) for Home Assistant control, LLM integrations, and various other purposes.
### Micron Parser JS
[Micron Parser JS](https://github.com/RFnexus/micron-parser-js) is the JavaScript-based parser for the Micron markup language, that most web-based Nomad Network browsers use. If you want to make utilities or tools that display Micron pages, this library is essential.
### Reticulated
[Reticulated](https://github.com/RFnexus/Reticulated) is a Reticulum Network simulator that spawns live, interactive Reticulum instances controllable from a node-based Web UI.
You can create networks of any topology and set bitrate, MTU, and configure path loss and propagation behavior. It provides a top-down view to a live network. You can connect any Reticulum application to the simulated network. It also has built in utilities like a basic LXMF chat function and Resource transfer included.
### RNMon
[RNMon](https://github.com/lbatalha/rnmon) is a monitoring daemon designed to monitor the status of multiple RNS applications and push the metrics to an InfluxDB instance over the influx line protocol.
## Device Flashers
In addition to the included command-line `rnodeconf` flasher, several community-provided RNode device flashers exist:
- [RNS Moscow](https://flasher.rns.moscow/)
- [Aetherlab](https://flasher.aetherlab.org/)
Several programs, such as [Sideband](https://github.com/markqvist/Sideband) and [MeshChatX](https://meshchatx.com/) also include built-in device flashers that can be used fully offline.
## Protocols
A number of standard protocols have emerged through real-world usage and testing in the Reticulum community. While you may sometimes want to use completely custom protocols and implementations when writing Reticulum-based software, using these protocols provides application developers with an easy way to implement advanced functionality quickly and effortlessly. Using them also ensures compatibility and interoperability between many different client applications, creating an open communications ecosystem where users are free to choose the applications that suit their needs, while remaining connected to everyone else.
@ -154,8 +188,8 @@ RRC is intentionally simple. It does not pretend to be email, a mailbox, or a di
This section provides a list of various community-provided interface modules, guides and resources for creating Reticulum networks over special or challenging mediums.
* Custom interface module for running [RNS over HTTP](https://git.quad4.io/RNS-Things/RNS-over-HTTP)
* [Modem73](https://github.com/RFnexus/modem73) is an efficient software modem that can be used with Reticulum
* Custom interface module for running [RNS over HTTP](https://github.com/Quad4-Software/RNS-over-HTTP)
* Guide for running [Reticulum over ICMP](https://github.com/matvik22000/rns-over-icmp) using `PipeInterface`
* Guide for running [Reticulum over DNS](https://github.com/markqvist/Reticulum/discussions/1002) with Iodine
* Guide for running [Reticulum over HF radio](https://github.com/RFnexus/reticulum-over-hf)
* [Modem73](https://github.com/RFnexus/modem73) is a KISS TNC OFDM modem frontend that can be used with Reticulum
* Guide for running [Reticulum over HF radio](https://github.com/RFnexus/reticulum-over-hf)

View file

@ -674,7 +674,7 @@ For the full documentation on the rngit system, see the [Git Over Reticulum](git
The `rnx` utility is a basic remote command execution program. It allows you to
execute commands on remote systems over Reticulum, and to view returned command
output. For a fully interactive remote shell solution, be sure to also take a look
at the [rnsh](https://github.com/acehoss/rnsh) program.
at the [rnsh](#using-rnsh) program.
**Usage Examples**

View file

@ -8,6 +8,16 @@ This chapter of the manual serves as the technical reference for the distributed
A set of utilities for distributed collaborative software development and publishing are included in RNS.
.. only:: html
.. image:: screenshots/rngit.webp
:align: center
.. only:: latex
.. image:: screenshots/rngit.png
:align: center
The system consists of two parts: The ``rngit`` node that hosts repositories, and the ``git-remote-rns`` helper that enables Git to communicate with rngit nodes. As soon as you have RNS installed on your system, you can transparently use Git with Reticulum-hosted repositories just like any other type of remote. Git over Reticulum uses URLs in the following format: ``rns://DESTINATION_HASH/group/repo``.
If you set a branch to track a Reticulum remote as the default upstream, you can simply use ``git`` as you normally would; all commands work transparently and as expected.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 500 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 63 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 123 KiB

After

Width:  |  Height:  |  Size: 268 KiB

Before After
Before After

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 54 KiB

Before After
Before After

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 776 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 135 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 142 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 332 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 KiB

View file

@ -4,146 +4,225 @@
Programs Using Reticulum
************************
This chapter provides a non-exhaustive list of notable programs, systems and application-layer
protocols that have been built using Reticulum.
This chapter provides a non-exhaustive list of notable programs, systems and application-layer protocols that have been built using Reticulum.
These programs will let you get a feel for how Reticulum works. Most of them have been designed
to run well even over slow networks based on LoRa or packet radio, but all can also be used over fast
links, such as local WiFi, wired Ethernet, the Internet, or any combination.
Many different applications using Reticulum already exist, serving a wide variety of purposes from day-to-day communication and information sharing to systems administration and tackling advanced networking and communications challenges.
As such, it is easy to get started experimenting, without having to set up any radio
transceivers or infrastructure just to try it out. Launching the programs on separate
devices connected to the same WiFi network is enough to get started, and physical
radio interfaces can then be added later.
.. tip::
For ease of discovery while reading this manual over the web or as an e-book, links provided in this chapter primarily point to repositories and pages located on internet servers. In many cases, these are public web mirrors, with the upstream repositories residing on Reticulum nodes. For the latest source, updates and information regarding any project, be sure to check their Nomad Network or ``rngit`` nodes.
Programs & Utilities
====================
These programs will let you get a feel for how Reticulum works. Most of them have been designed to run well even over slow networks based on LoRa or packet radio, but all can also be used over fast links, such as local WiFi, wired Ethernet, the Internet, or any combination.
Many different applications using Reticulum already exist, serving a wide variety of purposes
from day-to-day communication and information sharing to systems administration and tackling
advanced networking and communications challenges.
As such, it is easy to get started experimenting, without having to set up any radio transceivers or infrastructure just to try it out. Launching the programs on separate devices connected to the same WiFi network is enough to get started, and physical radio interfaces can then be added later.
Development of Reticulum-based applications and systems is ongoing, so consider this list
a non-exhaustive starting point of *some* of the options available. With a bit of searching,
primarily over Reticulum itself, you will find many more interesting things.
Development of Reticulum-based applications and systems is ongoing, so consider this list a non-exhaustive starting point of *some* of the options available. With a bit of searching, primarily over Reticulum itself, you will find many more interesting things.
Remote Shell
^^^^^^^^^^^^
Browsing & Publishing
=====================
The `rnsh <https://github.com/acehoss/rnsh>`_ program lets you establish fully interactive
remote shell sessions over Reticulum. It also allows you to pipe any program to or from a
remote system, and is similar to how ``ssh`` works. The ``rnsh`` program is very efficient, and
can facilitate fully interactive shell sessions, even over extremely low-bandwidth links,
such as LoRa or packet radio.
In addition to the programs listed in this section, other Nomad Network clients include:
In addition to the default, fully interactive terminal mode,
for extremely limited links, ``rnsh`` offers line-interactive mode, allowing you to interact
with remote systems, even when link throughput is counted in a few hundreds of bits per second.
.. raw:: latex
\newpage
- `MeshChatX <https://meshchatx.com/>`_
- `Columba <https://github.com/torlando-tech/columba/>`_
Nomad Network
^^^^^^^^^^^^^
The terminal-based program `Nomad Network <https://github.com/markqvist/nomadnet>`_
provides a complete encrypted communications suite built with Reticulum. It features
encrypted messaging (both direct and delayed-delivery for offline users), file sharing,
and has a built-in text-browser and page server with support for dynamically rendered pages,
user authentication and more.
The terminal-based program `Nomad Network <https://github.com/markqvist/nomadnet>`_ provides a complete encrypted communications suite built with Reticulum.
.. image:: screenshots/nomadnet_3.png
:target: https://github.com/markqvist/nomadnet
.. only:: html
`Nomad Network <https://github.com/markqvist/nomadnet>`_ is a user-facing client
for the messaging and information-sharing protocol LXMF.
.. image:: screenshots/nomadnet_6.webp
:align: center
:target: https://github.com/markqvist/nomadnet
.. only:: latex
.. image:: screenshots/nomadnet_6.png
:align: center
:target: https://github.com/markqvist/nomadnet
It features encrypted LXMF messaging (both direct and delayed-delivery for offline users), file sharing, and has a built-in text-browser and page server with support for dynamically rendered pages, user authentication and more. It also includes an RRC client and a suite of network utilities.
Ren Browser
^^^^^^^^^^^
`Ren Browser <https://github.com/Quad4-Software/Ren-Browser>`_ is a modern, standalone browser for Reticulum Network using the `Reticulum-Go <https://github.com/Quad4-Software/Reticulum-Go>`_ stack. The project actively being developed, and should be considered alpha level software, but much of the functionality is already working. If you want to help expanding the ecosystem, this is an excellent project to take a look at.
.. only:: html
.. image:: screenshots/ren_browser.webp
:align: center
:target: https://github.com/fr33n0w/rBrowser
.. only:: latex
.. image:: screenshots/ren_browser.png
:align: center
:target: https://github.com/fr33n0w/rBrowser
Ren Browser is great example of an application aiming for true, seamless interoperability with the existing software ecosystem. It can operate fully standalone using it's embedded `Go implementation <https://github.com/Quad4-Software/Reticulum-Go>`_ of Reticulum, or seamlessly utilise a shared RNS instance already running on the system.
RNS Page Node
^^^^^^^^^^^^^
`RNS Page Node <https://git.quad4.io/RNS-Things/rns-page-node>`_ is a simple way to serve pages and files to any other Nomad Network compatible client. Drop-in replacement for NomadNet nodes that primarily serve pages and files.
`RNS Page Node <https://github.com/Quad4-Software/rns-page-node>`_ is a simple way to serve pages and files to any other Nomad Network compatible client. Drop-in replacement for NomadNet nodes that primarily serve pages and files.
Retipedia
^^^^^^^^^
You can host the entirity of Wikipedia (or any ``.zim``) file to other Nomad Network clients using `Retipedia <https://github.com/RFnexus/Retipedia>`_.
You can host the entirity of Wikipedia, StackExchange or any other ``.zim`` file, to Nomad Network clients using `Retipedia <https://github.com/RFnexus/Retipedia>`_.
.. only:: html
.. image:: screenshots/retipedia.webp
:align: center
:target: https://github.com/RFnexus/Retipedia
.. only:: latex
.. image:: screenshots/retipedia.png
:align: center
:target: https://github.com/RFnexus/Retipedia
Git Over Reticulum
^^^^^^^^^^^^^^^^^^
The included :ref:`rngit<git-main>` system provides a fully distributed solution for managing, hosting, collaborating on and interacting with Git repositories over Reticulum.
.. only:: html
.. image:: screenshots/rngit.webp
:align: center
.. only:: latex
.. image:: screenshots/rngit.png
:align: center
.. raw:: latex
\newpage
Messaging & Voice
=================
Sideband
^^^^^^^^
If you would rather use an LXMF client with a graphical user interface, you can take
a look at `Sideband <https://unsigned.io/sideband>`_, which is available for Android,
Linux, macOS and Windows. Sideband is an advanced LXMF and LXST client, and a multi-purpose Reticulum
utility, with features and functionality targeted at advanced users.
`Sideband <https://github.com/markqvist/Sideband>`_ is a technical LXMF and LXST client, for Android, Linux, macOS and Windows. It also serves as a multi-purpose Reticulum utility, with features and functionality targeted at advanced users.
.. only:: html
.. image:: screenshots/sideband_devices.webp
:align: center
:target: https://unsigned.io/sideband
:target: https://github.com/markqvist/Sideband
.. only:: latex
.. image:: screenshots/sideband_devices.png
:align: center
:target: https://unsigned.io/sideband
:target: https://github.com/markqvist/Sideband
Sideband allows you to communicate with other people or LXMF-compatible
systems over Reticulum networks using LoRa, Packet Radio, WiFi, I2P, Encrypted QR
Paper Messages, or anything else Reticulum supports.
Sideband allows you to communicate with other people or LXMF-compatible systems over Reticulum networks using LoRa, Packet Radio, WiFi, I2P, Encrypted QR Paper Messages, or anything else Reticulum supports.
It also interoperates with all other LXMF clients, and provides advanced features such as voice messaging,
real-time voice calls, file attachments, private telemetry sharing, and a full
plugin system for expandability.
It interoperates with all other LXMF clients, and provides advanced features such as PTT and voice messaging, real-time voice calls, file attachments, private telemetry sharing, and a full plugin system for expandability.
.. raw:: latex
\newpage
MeshChatX
^^^^^^^^
^^^^^^^^^
A `Reticulum MeshChat fork from the future <https://git.quad4.io/RNS-Things/MeshChatX>`_, with the goal of providing everything you need for Reticulum, LXMF, and LXST in one beautiful and feature-rich application. This project is separate from the original `Reticulum MeshChat <https://github.com/liamcottle/reticulum-meshchat>`_ project, and is not affiliated with the original project, but is a much more up-to-date, comprehensive and well-maintained fork.
`MeshChatX <https://meshchatx.com/>`_ is an all-in-one Reticulum client with messaging, calling, and a NomadNet browser, providing everything you need for Reticulum, LXMF, and LXST in one beautiful and feature-rich application.
.. only:: html
.. image:: screenshots/meshchatx.webp
:align: center
:target: https://git.quad4.io/RNS-Things/MeshChatX
:target: https://meshchatx.com/
.. only:: latex
.. image:: screenshots/meshchatx.png
:align: center
:target: https://git.quad4.io/RNS-Things/MeshChatX
:target: https://meshchatx.com/
Features include full LXST support, custom voicemail, phonebook, contact sharing, and ringtone support, multi-identity handling, modern UI/UX, offline documentation, expanded tools, page archiving, integrated maps, telemetry and improved application security.
Features include full LXST support, custom voicemail, phonebook, contact sharing, ringtone support, multi-identity handling, modern UI/UX, offline documentation, expanded tools, page archiving, integrated maps, telemetry and improved application security.
.. raw:: latex
Columba
^^^^^^^
\newpage
`Columba <https://github.com/torlando-tech/columba/>`_ is a simple and familiar LXMF messaging app Android, built with a native Android interface and Material Design 3. It also includes LXST voice call functionality, and a mobile Nomad Network page browser.
.. only:: html
.. image:: screenshots/columba.webp
:align: center
:target: https://github.com/torlando-tech/columba/
.. only:: latex
.. image:: screenshots/columba.png
:align: center
:target: https://github.com/torlando-tech/columba/
Ren TUI
^^^^^^^
`Ren TUI <https://github.com/Quad4-Software/Ren-TUI>`_ is an early prototype terminal LXMF client for Reticulum built with Odin on librns (Reticulum-Go). It aims for NomadNet-like messaging/browsing without urwid or ncurses.
.. only:: html
.. image:: screenshots/rentui.webp
:align: center
:target: https://github.com/Quad4-Software/Ren-TUI
.. only:: latex
.. image:: screenshots/rentui.png
:align: center
:target: https://github.com/Quad4-Software/Ren-TUI
Chat
====
Reticulum Relay Chat
^^^^^^^^^^^^^^^^^^^^
`Reticulum Relay Chat <https://rrc.kc1awv.net/>`_ is a live chat system built on top of the Reticulum Network Stack. It exists to let people talk to each other in real time over Reticulum without dragging in message databases, synchronization engines, or architectural commitments they did not ask for.
The `rrcd <https://github.com/kc1awv/rrcd>`_ program provides a functional, reference RRC hub-server daemon implementation. RRC user clients include `rrc-gui <https://github.com/kc1awv/rrc-gui>`_ and `rrc-web <https://github.com/kc1awv/rrc-web>`_.
.. only:: html
.. image:: screenshots/rrc.webp
:align: center
.. only:: latex
.. image:: screenshots/rrc.png
:align: center
RRC is closer in spirit to IRC than to modern “everything platforms.” You connect, you join a room, you talk, and then you leave. If you were present, you saw the conversation. If you were not, the conversation did not wait for you. This is not an accident. This is the entire design.
The `rrcd <https://github.com/kc1awv/rrcd>`_ program provides a functional, reference RRC hub-server daemon implementation. RRC user clients include:
- `Nomad Network <https://github.com/markqvist/NomadNet/>`_
- `MeshChatX <https://meshchatx.com/>`_
- `Eridanus <https://github.com/torlando-tech/eridanus>`_
- `rrc-gui <https://github.com/kc1awv/rrc-gui>`_
- `rrc-web <https://github.com/kc1awv/rrc-web>`_
RetiBBS
^^^^^^^
`RetiBBS <https://github.com/kc1awv/RetiBBS>`_ is a bulletin board system implementation for Reticulum networks.
`RetiBBS <https://github.com/kc1awv/RetiBBS>`_ is an old-school bulletin board system implementation for Reticulum networks.
.. only:: html
@ -163,29 +242,14 @@ RetiBBS allows users to communicate through message boards in a secure manner.
\newpage
RBrowser
^^^^^^^^
Voice & Telephony
=================
The `rBrowser <https://github.com/fr33n0w/rBrowser>`_ program is a cross-platform, standalone, web-based browser for exploring NomadNetwork Nodes over Reticulum Network. It automatically discovers NomadNet nodes through network announces and provides a user-friendly interface for browsing distributed content with Micron markup support.
In addition to the programs listed in this section, other LXST voice clients include:
.. only:: html
.. image:: screenshots/rbrowser.webp
:align: center
:target: https://github.com/fr33n0w/rBrowser
.. only:: latex
.. image:: screenshots/rbrowser.png
:align: center
:target: https://github.com/fr33n0w/rBrowser
Includes useful features like automatic listening for announce, adding nodes to favorites, browsing and rendering any kind of NomadNet links, downloading files from remote nodes, a unique local NomadNet Search Engine and more.
.. raw:: latex
\newpage
- `Sideband <https://github.com/markqvist/Sideband>`_
- `MeshChatX <https://meshchatx.com/>`_
- `Columba <https://github.com/torlando-tech/columba/>`_
Reticulum Network Telephone
^^^^^^^^^^^^^^^^^^^^^^^^^^^
@ -206,14 +270,31 @@ The ``rnphone`` program, included as part of the `LXST <https://github.com/markq
It supports interfacing directly with hardware peripherals such as GPIO keypads and LCD displays, providing a modular system for building secure hardware telephones.
.. raw:: latex
\newpage
Partyline
^^^^^^^^^
`Partyline <https://github.com/RFnexus/partyline>`_ is a group voice application for Reticulum, built on `LXST <https://github.com/markqvist/LXST>`_, inspired by `Mumble <https://github.com/mumble-voip/mumble>`_.
.. only:: html
.. image:: screenshots/partyline.webp
:align: center
:target: https://github.com/markqvist/LXST
.. only:: latex
.. image:: screenshots/partyline.png
:align: center
:target: https://github.com/markqvist/LXST
It provides both realtime group voice over any Reticulum transport capable of >6 kilobits per second, LXST dial-in support, listen-only music/broadcasting rooms, and many other useful functions.
LXST Phone
^^^^^^^^^^
The `LXST Phone <https://github.com/kc1awv/lxst_phone>`_ program is a cross-platform desktop application for performing LXST voice calls over Reticulum.
The `LXST Phone <https://github.com/kc1awv/lxst_phone>`_ program is a cross-platform desktop application for performing LXST voice calls over Reticulum. It supports various advanced features such as SAS verification, peer blocking, rate limiting, encrypted call history storage and contact management.
.. only:: html
@ -227,28 +308,60 @@ The `LXST Phone <https://github.com/kc1awv/lxst_phone>`_ program is a cross-plat
:align: center
:target: https://github.com/kc1awv/lxst_phone
It supports various advanced features such as SAS verification, peer blocking, rate limiting, encrypted call history storage and contact management.
.. raw:: latex
\newpage
LXMFy
^^^^^
System Administration
=====================
`LXMFy <https://lxmfy.quad4.io/>`_ is a comprehensive and advanced bot creation framework for LXMF, that allows building any kind of automation or bot system running over LXMF and Reticulum. `Bot implementations exist <https://github.com/lxmfy/awesome-lxmfy-bots>`_ for Home Assistant control, LLM integrations, and various other purposes.
Remote Shell
^^^^^^^^^^^^
The included :ref:`rnsh<using-rnsh>` program lets you establish fully interactive
remote shell sessions over Reticulum. It also allows you to pipe any program to or from a
remote system, and is similar to how ``ssh`` works. The ``rnsh`` program is very efficient, and
can facilitate fully interactive shell sessions, even over extremely low-bandwidth links,
such as LoRa or packet radio.
LXMF Interactive Client
^^^^^^^^^^^^^^^^^^^^^^^
`LXMF Interactive Client <https://github.com/fr33n0w/lxmf-cli>`_ is a feature-rich, terminal-based LXMF messaging client with many advanced features and an extensible plugin architecture.
In addition to the default, fully interactive terminal mode, for extremely limited links,
``rnsh`` offers line-interactive mode, allowing you to interact with remote systems, even
when link throughput is counted in a few hundreds of bits per second.
RNS FileSync
^^^^^^^^^^^^
The `RNS FileSync <https://git.quad4.io/RNS-Things/RNS-Filesync>`_ program enables automatic file synchronization between devices without requiring central servers, internet connectivity, or cloud services. It works over any network medium supported by Reticulum, including radio, LoRa, WiFi, or the internet, making it ideal for off-grid, privacy-focused, and resilient file sharing.
The `RNS FileSync <https://github.com/Quad4-Software/RNS-Filesync>`_ program enables automatic file synchronization between devices without requiring central servers, internet connectivity, or cloud services. It works over any network medium supported by Reticulum, including radio, LoRa, WiFi, or the internet, making it ideal for off-grid, privacy-focused, and resilient file sharing.
.. raw:: latex
\newpage
Utilities & Components
======================
Modem73
^^^^^^^
`MODEM73 <https://github.com/RFnexus/modem73>`_ and its companion `Modem73Interface <https://github.com/RFnexus/modem73interface>`_ is an open source software modem that works with any HF, VHF, or UHF radio capable of 2400 Hz of bandwidth. All you need is a sound card and audio cable for your radio.
.. only:: html
.. image:: screenshots/modem73.webp
:align: center
:target: https://github.com/RFnexus/modem73
.. only:: latex
.. image:: screenshots/modem73.jpg
:align: center
:target: https://github.com/RFnexus/modem73
LXMFy
^^^^^
`LXMFy <https://lxmfy.quad4.io/>`_ is a comprehensive and advanced bot creation framework for LXMF, that allows building any kind of automation or bot system running over LXMF and Reticulum. `Bot implementations exist <https://lxmfy.quad4.io/latest/creating-bots/>`_ for Home Assistant control, LLM integrations, and various other purposes.
Micron Parser JS
@ -256,6 +369,25 @@ Micron Parser JS
`Micron Parser JS <https://github.com/RFnexus/micron-parser-js>`_ is the JavaScript-based parser for the Micron markup language, that most web-based Nomad Network browsers use. If you want to make utilities or tools that display Micron pages, this library is essential.
Reticulated
^^^^^^^^^^^
`Reticulated <https://github.com/RFnexus/Reticulated>`_ is a Reticulum Network simulator that spawns live, interactive Reticulum instances controllable from a node-based Web UI.
.. only:: html
.. image:: screenshots/reticulated.webp
:align: center
:target: https://github.com/RFnexus/Reticulated
.. only:: latex
.. image:: screenshots/reticulated.jpg
:align: center
:target: https://github.com/RFnexus/Reticulated
You can create networks of any topology and set bitrate, MTU, and configure path loss and propagation behavior. It provides a top-down view to a live network. You can connect any Reticulum application to the simulated network. It also has built in utilities like a basic LXMF chat function and Resource transfer included.
RNMon
^^^^^
@ -267,6 +399,16 @@ RNMon
\newpage
Device Flashers
===============
In addition to the included command-line ``rnodeconf`` flasher, several community-provided RNode device flashers exist:
- `RNS Moscow <https://flasher.rns.moscow/>`_
- `Aetherlab <https://flasher.aetherlab.org/>`_
Several programs, such as `Sideband <https://github.com/markqvist/Sideband>`_ and `MeshChatX <https://meshchatx.com/>`_ also include built-in device flashers that can be used fully offline.
Protocols
=========
@ -298,8 +440,8 @@ Interface Modules & Connectivity Resources
This section provides a list of various community-provided interface modules, guides and resources for creating Reticulum networks over special or challenging mediums.
* Custom interface module for running `RNS over HTTP <https://git.quad4.io/RNS-Things/RNS-over-HTTP>`_
* `Modem73 <https://github.com/RFnexus/modem73>`_ is an efficient software modem that can be used with Reticulum
* Custom interface module for running `RNS over HTTP <https://github.com/Quad4-Software/RNS-over-HTTP>`_
* Guide for running `Reticulum over ICMP <https://github.com/matvik22000/rns-over-icmp>`_ using ``PipeInterface``
* Guide for running `Reticulum over DNS <https://github.com/markqvist/Reticulum/discussions/1002>`_ with Iodine
* Guide for running `Reticulum over HF radio <https://github.com/RFnexus/reticulum-over-hf>`_
* `Modem73 <https://github.com/RFnexus/modem73>`_ is a KISS TNC OFDM modem frontend that can be used with Reticulum
* Guide for running `Reticulum over HF radio <https://github.com/RFnexus/reticulum-over-hf>`_

View file

@ -705,7 +705,7 @@ The rnx Utility
The ``rnx`` utility is a basic remote command execution program. It allows you to
execute commands on remote systems over Reticulum, and to view returned command
output. For a fully interactive remote shell solution, be sure to also take a look
at the `rnsh <https://github.com/acehoss/rnsh>`_ program.
at the :ref:`rnsh<using-rnsh>` program.
**Usage Examples**
@ -771,6 +771,8 @@ another one, which will be created if it does not already exist
--version show program's version number and exit
.. _using-rnsh:
The rnsh Utility
================