go get -t github.com/FreifunkBremen/freifunkmanager/...
go get github.com/mattn/goveralls
go get golang.org/x/tools/cmd/cover
cd $GOPATH/src/github.com/FreifunkBremen/freifunkmanager/
go build
cd webroot
yarn install
yarn gulp build
```
Run:
```
./freifunkmanager -config config_example.conf
```
## Usage
Visit http://localhost:8080/
Navigation bar at top of page:
- marker icon: (TODO)
- List: show list of all known nodes
- use Edit link in last column of a node to edit its details; changes made on the Edit page are saved immediately
- to change just the hostname, double-click on hostname field in list and make your change
- Map: show map of nodes
- use Layers icon in upper right corner to enable geojson overlay and view clients
- Statistics: show statistics about nodes, clients, used channels...
- Login with text field: enter password (value of "secret" in config file) and click "Login" to log in
- this is necessary to make any changes
- there is no user management; anybody who has the password has full access
- blue rectangle on the far right: (TODO: connection status?)
## Technical Details
List of known access points will be retrieved from [Yanic](https://github.com/FreifunkBremen/yanic) (ie. representing live data from APs).
Additionally, APs can be added manually by visiting a page like /#/n/apname (where "apname" is the node-id of the new AP), and then setting a hostname.
Each browser tab has a websocket connection to the server, so changes made in one tab will appear immediately in other tabs as well
All changes are saved to state file (eg. /tmp/freifunkmanager.json - can be changed in config file).