NomadPL carries HTML pages, stylesheets, images and web applications over Reticulum. The ciXnet client provides a built-in browser and a browser bridge for access through a regular browser.
Why we built it
NomadNet was an important part of how we got started with Reticulum. Hosting pages gave our network a purpose beyond messaging: information could be available even when nobody was there to answer. Its text-based interface also appealed to us as engineers and enthusiasts, with something of the BTX and early online-service experience.
Getting our users on board was harder. They were accustomed to browsing websites and had little interest in an interface that felt like going back to the 1980s. With NomadNet, they were always conscious of entering a separate environment, with its own controls and conventions.
We wanted people to use the network every day. Looking something up, reading a page or checking for updates needed to become ordinary activities. If every visit felt like a technical excursion or a resilience exercise, people would try it out and then return to their usual tools.
That shaped our development of NomadPL and the ciXnet clients. NomadPL provides HTML pages and familiar navigation. The ciXnet client includes a built-in browser and a browser bridge that lets people access those pages through the browser they already use. Most of our users now browse the NomadPL network in Chrome. They can open a page and follow links without learning a separate browsing environment.
Keeping transfers small remains part of the design. Compression helps limit the overhead of the richer pages, and in our use the additional latency has been small. Making the network comfortable enough for everyday use has been as important to us as getting the underlying connections working.
How it fits together
The ciXnet client provides two ways to browse: its built-in browser, or a regular browser connected through the client’s browser bridge. The client requests pages from remote NomadPL destinations over Reticulum. Existing Reticulum interfaces carry the traffic.
NomadPL sites use the nomadpl.node destination namespace. NomadNet uses nomadnetwork.node. The two can run alongside each other; each has its own destinations and discovery.
Configuration & getting started
For everyday browsing, use the ciXnet client’s built-in browser or its browser bridge. The commands below cover the standalone NomadPL package and its command-line tools.
The standalone package requires Python 3.11 or newer and Reticulum connectivity between the browsing computer and the site. Download a release or clone the repository, then run the following installation command from its source directory.
python -m pip install .Serve a site
The repository includes a small example site. This command serves it and keeps the site's identity outside the published directory.
nomadpl serve --root examples/site --identity state/home.identity --name "My site"The command prints the site's nomadpl:// address. Keep the identity file: it determines the destination address.
Standalone browser testing
The standalone package also includes a command-line gateway for testing a site without the ciXnet client. On a connected browsing computer, replace DESTINATION_HASH with the destination printed by the site command.
nomadpl browse nomadpl://DESTINATION_HASH/ --port 8080Open the local HTTP address printed by the bridge. The bridge listens on loopback, and each destination gets its own browser hostname.
Full configuration, application examples & release notes ↗Support & development
Please use GitHub Issues for support questions and bug reports. Include your configuration and describe what happened.
NomadPL issue tracker ↗