1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
use crateBlockArgs;
use crateDomainArgs;
use crateExportArgs;
use crateImportArgs;
use cratePublishArgs;
use ;
/// A command-line interface for the sneakerweb.
///
/// The sneakerweb is a peer-to-peer protocol for web publishing without permission.
/// Anyone can claim any number of unique domains. Sneakerwebsites are stored on user devices,
/// and collections of sites can be transferred as .snk files by any means available.
/// Read more about it at https://www.sneakerweb.org.
///
/// Publishing consists of generating a domain with the `domain` command, and writing a directory
/// of web content to that domain with the `publish` command. Generate a .snk file to share your
/// sneakerwebsites using the `export` command, and add new ones to your collection by reading .snk
/// files from your community with the `import` command.
///
/// If you encounter sneakerweb content you don't want to see, use the `block` command to remove it,
/// and ensure that it isn't imported again in the future. Communities can moderate their local
/// sneakerweb by coordinating blocklists to prevent unwanted domains from propagating.
///
/// To browse the sneakerweb, simply run `sneakerweb serve`.
///
/// Sneakerweb configuration and storage can be found in the ~/.sneakerweb directory.