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
**Netkit** is a Go graph algorithm library focused on clarity, extensibility, and practical performance.
3
+
**Netkit** is a Go toolkit for graph algorithms, network analysis, and P2P network simulation.
4
4
5
-
It provides reusable graph data structures and common network analysis algorithms, with selected results validated against [NetworkX](https://networkx.org/).
5
+
It provides reusable graph data structures, common network analysis algorithms, and a programmable P2P layer for testing message propagation over graph-based network topologies.
6
+
7
+
Selected graph algorithm results are validated against [NetworkX](https://networkx.org/).
6
8
7
9
- Go 1.25+
8
10
- Module: `github.com/elecbug/netkit`
@@ -12,7 +14,7 @@ It provides reusable graph data structures and common network analysis algorithm
12
14
13
15
## Features
14
16
15
-
Netkit provides graph utilities and network analysis algorithms for both directed and undirected graphs.
17
+
Netkit provides graph utilities, network analysis algorithms, and P2P simulation tools for both directed and undirected graphs.
16
18
17
19
Current focus areas include:
18
20
@@ -23,6 +25,8 @@ Current focus areas include:
23
25
- Graph diameter
24
26
- PageRank
25
27
- Modularity analysis
28
+
- P2P overlay construction
29
+
- Message propagation simulation
26
30
- NetworkX-compatible validation for selected algorithms
27
31
28
32
Implemented or planned algorithms include:
@@ -38,13 +42,22 @@ Implemented or planned algorithms include:
38
42
- Diameter / weighted diameter
39
43
- Modularity
40
44
45
+
The P2P simulation layer supports:
46
+
47
+
- Creating peer networks from graph topologies
48
+
- Defining message propagation behavior
49
+
- Configuring processing latency
50
+
- Configuring network latency
51
+
- Testing broadcast and relay strategies
52
+
- Evaluating propagation behavior over generated or custom graphs
53
+
41
54
---
42
55
43
56
## Installation
44
57
45
58
```bash
46
59
go get github.com/elecbug/netkit@latest
47
-
````
60
+
```
48
61
49
62
---
50
63
@@ -53,6 +66,8 @@ go get github.com/elecbug/netkit@latest
53
66
> [!NOTE]
54
67
> Netkit is under active development. Public APIs may change before the first stable release.
55
68
69
+
The same graph can be used both for graph analysis and as a P2P overlay topology.
0 commit comments