You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Source code of [https://xmr.ditatompel.com](https://xmr.ditatompel.com), a website that helps you monitor your favourite Monero remote nodes.
8
+
Source code of [https://xmr.ditatompel.com](https://xmr.ditatompel.com),
9
+
a website that helps you monitor your favourite Monero remote nodes.
9
10
10
-
> :warning::construction: This project is still freaking 0.x.x:construction:,
11
+
> :warning::construction: This project is not mature enough:construction:,
11
12
> If you want to use it on your server, please use it with caution.
12
13
13
14
## How does it work?
14
15
15
-
Apart from CPU architecture type, you can build two types of binaries from this project: a **server** and a **client**.
16
+
Apart from CPU architecture type, you can build two types of binaries from
17
+
this project: a **server** and a **client**.
16
18
17
-
The **clients** is used to fetch node information given by the server. First, it will ask the server which node to fetch. Then, it will fetch the information and report back to the server.
19
+
The **clients** is used to fetch node information given by the server. First,
20
+
it will ask the server which node to fetch. Then, it will fetch the information
21
+
and report back to the server.
18
22
19
-
The **server** serves an embedded Svelte static site for the Web UI. It also serves the `/api` endpoint that is used by the clients and the Web UI itself.
23
+
The **server** serves an embedded Svelte static site for the Web UI. It also
24
+
serves the `/api` endpoint that is used by the clients and the Web UI itself.
20
25
21
26
## Requirements
22
27
@@ -32,38 +37,56 @@ To build the executable binaries, you need:
32
37
### Server requirements
33
38
34
39
- MySQL/MariaDB
35
-
-[GeoIP Database](https://dev.maxmind.com/geoip/geoip2/geolite2/) (optional). Place it to `./assets/geoip`, see [./internal/geo/ip.go](./internal/geo/ip.go).
40
+
-[GeoIP Database][geoip_doc] (optional). Place it to `./assets/geoip`,
41
+
see [./internal/geo/ip.go](./internal/geo/ip.go).
36
42
37
43
## Installation
38
44
39
45
### For initial server setup:
40
46
41
-
1. Download [GeoIP Database](https://dev.maxmind.com/geoip/geoip2/geolite2/) and place it to `./assets/geoip`. (see [./internal/geo/ip.go](./internal/geo/ip.go)).
47
+
1. Download [GeoIP Database][geoip_doc] and place it to `./assets/geoip`.
48
+
(see [./internal/geo/ip.go](./internal/geo/ip.go)).
42
49
2. Pepare your MySQL/MariaDB.
43
50
3. Copy `.env.example` to `.env` and edit it to match with server environment.
44
-
4. Build the binary with `make server` (or `make build` to build both **server** and **client** binaries).
51
+
4. Build the binary with `make server` (or `make build` to build both
52
+
**server** and **client** binaries).
45
53
5. Run the service with `./bin/xmr-nodes-server-linux-<YOUR_CPU_ARCH> serve`.
2. Copy `.env.example` to `.env` and edit it to match with prober environment.
53
-
3. Build the binary with `make client` (or `make build` to build both **server** and **client** binaries).
61
+
3. Build the binary with `make client` (or `make build` to build both
62
+
**server** and **client** binaries).
54
63
4. Run the service with `./bin/xmr-nodes-client-linux-<YOUR_CPU_ARCH> probe`.
55
64
56
-
Systemd example: [xmr-nodes-prober.service](./deployment/init/xmr-nodes-prober.service) and [xmr-nodes-prober.timer](./deployment/init/xmr-nodes-prober.timer).
65
+
Systemd example: [xmr-nodes-prober.service][prober_systemd_service] and
66
+
[xmr-nodes-prober.timer][prober_systemd_timer].
57
67
58
68
## Development and Deployment
59
69
60
70
See the [Makefile](./Makefile).
61
71
72
+
## ToDo's
73
+
74
+
-[] Accept IPv6 nodes.
75
+
-[] Use `a-h/templ` and `HTMX` instead of `Svelte`.
76
+
-[] Use Go standard `net/http` instead of `fiber`.
0 commit comments