Meshviewer is an online visualization app to represent nodes and links on a map for Freifunk open mesh network.
It is recommended to use the latest release:
- Go to the release page and download the current build
- Let your webserver serve this build
- Add a config.json to the webdir (based on config.example.json)
- Clone this repository
- Run
npm install
- Place your config file in
public/config.json
. You can copy the example config for testing/development:cp config.example.json public
. - Run
npm run build
- A production build can then be found in
/build
Hint: You can start a development server with npm run dev
Static local test instance:
docker run -it --rm -u $(id -u):$(id -g) -v "$PWD":/app -w /app node npm install
docker run -it --rm -u $(id -u):$(id -g) -v "$PWD":/app -w /app node npm run build
docker run -it --rm -v "$PWD/build":/usr/share/nginx/html -p 8080:80 --name nginx nginx
The map is reachable at localhost:8080.
You have to copy config.example.json
to public/config.json
:
Start a development environment:
docker run -it --rm --name meshviewer-dev \
-u $(id -u):$(id -g) \
-v "$PWD":/app -w /app \
-e NODE_ENV=development \
-p 5173:5173 \
node npm run dev -- --host 0.0.0.0
The configuration documentation is nowhere near finished.
The deprecation warning can be turned of with "deprecation_enabled": false
- but we wouldn't suggest it.
You can insert your own HTML into the deprecation warning via "deprecation_text":""
.
To contribute to the project by developing new features, have a look at our development documentation.
Meshviewer started as ffnord/meshviewer for Freifunk Nord which was extended as hopglass/hopglass and further expanded by Freifunk Regensburg as ffrgb/meshviewer. After maintenance stopped, Freifunk Frankfurt took over expanding the code base as freifunk-ffm/meshviewer and added features like the deprecation warnings. It is now maintained by the Freifunk Org at freifunk/meshviewer.
The goal for this project is to extend Meshviewer, pick off where other forks ended and integrate those ideas into a code-base that is easily usable by all Freifunk communities. This also has the benefit that everyone can take advantage of the bundled development resources for implementing new features and fixing bugs.