eBay for krypto. https://kryptori.lu1.sh
1<html>
2 <head>
3 <title>Kryptori</title>
4 <style>
5 body {
6 font-family: monospace;
7 }
8
9 .main-content details {
10 border: 1px solid #aaa;
11 border-radius: 0px;
12 padding: 0.5em 0.5em 0;
13 }
14
15 .main-content summary {
16 font-weight: bold;
17 margin: -0.5em -0.5em 0;
18 padding: 0.5em;
19 cursor: pointer;
20 }
21
22 .main-content details[open] {
23 padding: 0.5em;
24 }
25
26 .main-content details[open] summary {
27 border-bottom: 1px solid #aaa;
28 margin-bottom: 0.5em;
29 }
30 .ad-container {
31 margin-top: 8px;
32 }
33 .input-container {
34 margin-top: 24px;
35 }
36 @media (prefers-color-scheme: dark) {
37 body {
38 background-color: #33334d;
39 color: white;
40 }
41 a {
42 color: white;
43 }
44 }
45 </style>
46 <meta name="viewport" content="width=device-width, initial-scale=1.0">
47 </head>
48 <body>
49 <div class="site-info">
50 <h1>Kryptori</h1>
51 <p>
52 Like Ebay but for crypto etc.
53 <br />
54 Not an escrow service, just getting two parties in touch
55 so that they can exchange virtual and physical goods.
56 <br />
57 The idea is that you and the other party conduct your affairs
58 over email, because that encourages your liberty as opposed to trying to
59 keep your data in some proprietary in-app chat.
60 <br />
61 <br />
62 ...What, you don't like the UI?!
63 Make a pull request to the <a href="https://tangled.sh/@lewis.moe/kryptori">source code</a> then.
64 </p>
65 </div>
66 <div class="main-content">
67 <details style="margin-top: 24px;">
68 <summary style="display: flex; align-items: center;"><h2>Create a new advertisement</h2></summary>
69 <form action="/create-ad" method="post">
70 <div class="input-container">
71 <label for="owner_email">
72 <b>Your email</b>
73 <br />
74 This is only stored in order to send user replies to later.
75 <br />
76 When the ad is deleted, so is the email address. You can see in the <a target="_blank" href="https://tangled.sh/@lewis.moe/kryptori">source code</a>
77 <br />
78 that the email isn't used anywhere else. I'm completely open to ideas
79 <br />
80 on how better to prove that the email address isn't saved or used anywhere else.
81 </label>
82 <br />
83 <input type="email" id="owner_email" name="owner_email" placeholder="abc@xyz.com" required>
84 </div>
85
86 <div class="input-container">
87 <label for="title">
88 <b>Title</b>
89 <br />
90 Be succinct.
91 <br />
92 I recommend the format <i>Have: {amount} {currency}. Want: {amount} {currency}.</i>
93 <br />
94 Eg. <i>Have: 5 XMR. Want: 0.011 BTC</i>
95 <br />
96 <i>Have: 5 XMR. Want: a mini PC worth 5 XMR. Mail to Stockholm, Sweden.</i>
97 </label>
98 <br />
99 <input type="text" id="title" name="title" style="width: 48%;" required>
100 </div>
101
102 <div class="input-container">
103 <label for="description">
104 <b>Description</b>
105 <br />
106 Here's where you actually describe details, caveats, etc.
107 </label>
108 <br />
109 <textarea id="description" name="description" style="width: 100%; height: 6rem;" required></textarea>
110 </div>
111
112 <div class="input-container">
113 <button type="submit">Create ad</button>
114 </div>
115 </form>
116 </details>
117 <h2>Advertisements</h2>
118 {{ ads }}
119 </div>
120 </body>
121</html>
122