objective categorical abstract machine language personal data server
1open Melange_json.Primitives
2open React
3
4let pegasus =
5 string
6 {js| ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⢀⣠⣴⡆⠀⠀⠀⠀⠀⠀
7⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣤⣤⣶⣶⠿⠿⢛⡛⠉⠀⠀⠀⠀⠀⠀⠀
8⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⣤⣤⣤⣴⣶⣿⢻⣿⣿⣶⣶⣢⣆⠀⠀⠀⣀⣀⣤⣤⣶⣶⣾⣿⡿⠿⣛⣛⣭⣵⣶⠾⢟⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀
9⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢿⣧⣾⣿⡟⣻⣿⣿⣿⣿⣿⣿⣭⣭⢠⣾⣿⣯⣭⣤⡬⣩⣭⣽⡶⠿⢟⣛⣯⣭⡶⣶⡛⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
10⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠛⠋⠉⠁⠿⣿⡿⣿⣿⣿⣿⣿⣯⡄⣿⣿⣿⣿⡟⠃⠈⠱⠶⠾⠛⢋⣭⣿⠶⣟⡛⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
11⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⠞⣡⣾⣿⣿⣿⣿⣟⡓⢠⣾⣿⠿⣛⣛⡛⣟⣛⣛⡛⢶⣶⣶⣶⣶⣶⣥⣤⣤⣤⣤⣄⣀⣀⣀⣀⠀⠀⠀
12⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⡞⠁⣴⣿⣿⣿⣿⣿⡿⠯⢁⣿⢟⣴⣿⣿⡿⢳⣿⣿⣿⠏⠰⠶⠶⢾⣽⣭⣭⣭⣙⣛⣛⣛⣛⡛⠿⠿⠿⠿⠋
13⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣾⡟⢀⣾⣿⣿⣿⣿⣿⣿⣿⠋⣾⡟⣼⣿⣿⢟⣴⣿⡿⢏⣀⣙⣛⣛⣛⡳⠶⠶⠶⣶⣭⣭⣭⣭⣭⣝⠛⠋⠀⠀⠀
14⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⡿⠀⣼⣿⣿⣿⣿⣿⣿⠟⣂⣼⡟⣱⣿⣿⢏⣼⣿⣿⠁⠬⣭⣙⣛⣛⣛⣛⠛⠿⠿⠿⠶⠶⠶⠶⠆⠀⠀⠀⠀⠀⠀
15⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⠟⢁⣤⣾⣿⣿⣿⣷⣶⣶⣾⣟⣫⣾⣿⣿⡏⣾⣿⣿⡅⢶⣶⣦⣤⣤⣬⣭⣭⣉⠛⠛⠛⠒⠂⠀⠀⠀⠀⠀⠀⠀⠀⠀
16⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣠⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠿⠟⠛⠱⣿⣛⣋⣤⣴⣶⣶⣦⣭⡉⠉⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
17⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣄⡀⠀⠀⢰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
18⠀⠀⠀⠀⠀⠀⠀⠀⠻⠿⠿⣿⡿⠶⠜⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣇⢻⣿⠿⢿⣶⣶⣦⣤⣀⣀⠀⠀⠀⠀⠀⠀⠀⠀
19⠀⠀⠀⠀⠀⠀⣼⣿⣿⣿⣶⣶⣶⣿⣷⣶⣾⣿⣿⣿⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢸⣿⠀⠀⠉⢿⣿⣿⣿⣿⣿⣷⣦⣄⠀⠀⠀⠀
20⠀⠀⠀⠀⢀⣼⠟⠉⠀⢸⣿⠛⠛⠛⠿⠿⢿⣿⠟⣠⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣯⡙⢻⣿⣿⣿⣿⣿⣿⡎⣿⡇⠀⠀⠀⠙⠉⠻⣿⣿⣿⣿⣿⣷⡄⠀⠀
21⠀⠀⠀⣠⣿⠏⠀⠀⠀⠘⣿⣧⡀⠀⠀⠀⠀⠀⠀⠈⠉⠙⠛⠻⠿⠿⠿⠛⠛⠛⠉⠉⠉⠁⠀⠀⠻⣿⣿⣿⣿⣿⣿⣿⣇⠀⠀⠀⠀⠀⠀⠀⠹⣿⣿⣿⣿⡷⠀⠀
22⠀⢀⣾⡿⠁⠀⠀⠀⠀⠀⠈⠻⢿⣶⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠻⣿⣿⣿⣿⣿⣿⣼⣶⠀⠀⠀⠀⠀⠀⠛⠿⠿⠟⠁⠀⠀
23⣰⣿⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⠻⠿⣿⣿⣷⣭⣁⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
24⠿⠥⠄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⠻⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
25⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⣿⣇⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀
26⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⡿⢿⣶⠀⠀⠀⠀⠀⠀⠀
27⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⣿⣆⠀⠀⠀⠀⠀⠀⠀⠀
28⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⠿⣷⠄⠀⠀⠀⠀⠀⠀
29⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠻⠿⠆⠀⠀⠀⠀⠀⠀
30|js}
31
32type props = unit [@@deriving json]
33
34let[@react.component] make ~props:(_ : props) () =
35 <main className="my-auto text-mist-100">
36 <pre className="text-mana-100">pegasus</pre>
37 <p>
38 (string "this is ")
39 <a
40 href="https://tangled.org/futur.blue/pegasus"
41 className="text-mana-100 underline hover:text-mana-200">
42 (string "pegasus")
43 </a>
44 (string ", an atproto personal data server")
45 </p>
46 <p>
47 (string "manage your account at ")
48 <a
49 href="/account" className="text-mana-100 underline hover:text-mana-200">
50 (string "/account")
51 </a>
52 </p>
53 <p>
54 (string "admin panel at ")
55 <a href="/admin" className="text-mana-100 underline hover:text-mana-200">
56 (string "/admin")
57 </a>
58 </p>
59 </main>