Coffee journaling on ATProto (alpha) alpha.arabica.social
coffee
17
fork

Configure Feed

Select the types of activity you want to include in your feed.

docs: clarify privacy and data ownership sections of terms, update about

+116 -23
+10 -4
internal/web/pages/about.templ
··· 20 20 <p class="text-brown-800 leading-relaxed"> 21 21 Arabica is a coffee brew tracking application built on the AT Protocol, a decentralized social networking protocol. 22 22 Unlike traditional apps where your data is locked in a company's database, Arabica stores your brew logs, 23 - coffee beans, and equipment information in <strong>your own Personal Data Server (PDS)</strong>. 23 + coffee beans, and equipment information in <strong>your Personal Data Server (PDS)</strong> &mdash; hosted 24 + by a provider you choose (such as 25 + <a href="https://bsky.app" class="link-bold" target="_blank" rel="noopener noreferrer">Bluesky</a>, 26 + <a href="https://selfhosted.social" class="link-bold" target="_blank" rel="noopener noreferrer">selfhosted.social</a>, or 27 + <a href="https://eurosky.cloud" class="link-bold" target="_blank" rel="noopener noreferrer">Eurosky</a>), 28 + <a href="https://atproto.com/guides/self-hosting" class="link-bold" target="_blank" rel="noopener noreferrer">self-hosted</a> on your own 29 + infrastructure, and portable to a different provider at any time. 24 30 </p> 25 31 </section> 26 32 <section class="card p-6"> ··· 44 50 </div> 45 51 <div class="card p-4"> 46 52 <h4 class="font-semibold text-brown-900 mb-2">Community Feed</h4> 47 - <p class="text-brown-700 text-sm">Share your best brews with the community (coming soon: likes and comments!)</p> 53 + <p class="text-brown-700 text-sm">Share your best brews with the community, and interact with likes and comments</p> 48 54 </div> 49 55 // <div class="bg-gradient-to-br from-brown-50 to-brown-100 border border-brown-200 p-4 rounded-lg shadow-md"> 50 56 // <h4 class="font-semibold text-brown-900 mb-2">Export Your Data</h4> ··· 55 61 <section> 56 62 <h2 class="text-2xl font-semibold text-brown-900 mb-4">The AT Protocol Advantage</h2> 57 63 <p class="text-brown-800 leading-relaxed"> 58 - The AT Protocol is a decentralized social networking protocol that gives users true ownership of their data 59 - and identity. When you use Arabica: 64 + The AT Protocol is a decentralized social networking protocol that gives users ownership of their data 65 + and a portable identity. When you use Arabica: 60 66 </p> 61 67 <ul class="list-disc list-inside space-y-2 text-brown-800 mt-3"> 62 68 <li>Your brew data is stored as ATProto records in collections on your PDS</li>
+9 -3
internal/web/pages/atproto.templ
··· 33 33 <div class="card p-4"> 34 34 <h3 class="font-semibold text-brown-900 mb-2">Personal Data Server (PDS)</h3> 35 35 <p class="text-brown-700 text-sm"> 36 - Your PDS is where all your data lives. Think of it as your personal database in the cloud. 37 - When you create brew logs in Arabica, they're stored in your PDS, not on Arabica's servers. 38 - You can switch PDS providers anytime without losing your data. 36 + Your PDS is where all your data lives. It can be hosted by a large provider like 37 + <a href="https://bsky.app" class="link-bold" target="_blank" rel="noopener noreferrer">Bluesky</a>, 38 + an independent host like 39 + <a href="https://selfhosted.social" class="link-bold" target="_blank" rel="noopener noreferrer">selfhosted.social</a> or 40 + <a href="https://eurosky.cloud" class="link-bold" target="_blank" rel="noopener noreferrer">Eurosky</a>, 41 + or <a href="https://atproto.com/guides/self-hosting" class="link-bold" target="_blank" rel="noopener noreferrer">self-hosted</a> 42 + on your own server. You choose where your PDS lives and can migrate between 43 + providers at any time. When you create brew logs in Arabica, they're stored in 44 + your PDS, not on Arabica's servers. 39 45 </p> 40 46 </div> 41 47 <div class="card p-4">
+97 -16
internal/web/pages/terms.templ
··· 27 27 </section> 28 28 <section> 29 29 <h2 class="text-2xl font-semibold text-brown-800 mb-4">1. Your Data Ownership</h2> 30 + <p class="text-brown-700 leading-relaxed mb-3"> 31 + All data you create through Arabica is stored in your AT Protocol Personal Data Server (PDS). 32 + Your PDS may be operated by a large provider (such as 33 + <a href="https://bsky.app" class="link-bold" target="_blank" rel="noopener noreferrer">Bluesky</a>), 34 + an independent host (such as 35 + <a href="https://selfhosted.social" class="link-bold" target="_blank" rel="noopener noreferrer">selfhosted.social</a> or 36 + <a href="https://eurosky.cloud" class="link-bold" target="_blank" rel="noopener noreferrer">Eurosky</a>), 37 + or by you on 38 + <a href="https://atproto.com/guides/self-hosting" class="link-bold" target="_blank" rel="noopener noreferrer">your own infrastructure</a>. 39 + You choose where your PDS lives, and the AT Protocol allows you to migrate to a different 40 + provider at any time, taking your data and identity with you. 41 + </p> 30 42 <p class="text-brown-700 leading-relaxed"> 31 - All data you create through Arabica is stored in your AT Protocol Personal Data Server (PDS). 32 43 Arabica does not own or claim any rights to your data. 33 44 </p> 34 45 <ul class="list-disc list-inside space-y-2 text-brown-700 mt-3"> 35 - <li>You retain full ownership and control of your data</li> 46 + <li>You retain ownership of your data and choose where it is hosted</li> 36 47 <li>You can delete your data at any time &mdash; deletes are respected immediately (see below)</li> 37 - <li>You can switch PDS providers without losing your data</li> 48 + <li>You can migrate to a different PDS provider without losing your data or identity</li> 38 49 <li>You can stop using Arabica and your data remains in your PDS</li> 39 50 </ul> 40 51 </section> ··· 94 105 </p> 95 106 </section> 96 107 <section> 97 - <h2 class="text-2xl font-semibold text-brown-800 mb-4">6. Service Availability</h2> 108 + <h2 class="text-2xl font-semibold text-brown-800 mb-4">6. Age Requirement</h2> 109 + <p class="text-brown-700 leading-relaxed"> 110 + You must be at least 13 years old to use Arabica. If you are between 13 and 18, you must have 111 + permission from a parent or legal guardian. We do not knowingly collect data from children 112 + under 13. If we become aware that a user is under 13, we will take steps to remove their 113 + data from our servers. 114 + </p> 115 + </section> 116 + <section> 117 + <h2 class="text-2xl font-semibold text-brown-800 mb-4">7. Content Moderation</h2> 118 + <p class="text-brown-700 leading-relaxed mb-3"> 119 + Arabica has a moderation system to maintain a safe and welcoming community. Moderators may: 120 + </p> 121 + <ul class="list-disc list-inside space-y-2 text-brown-700"> 122 + <li><strong>Hide content</strong> &mdash; Records that violate community standards may be hidden from the community feed. Hidden records remain in your PDS and are not deleted.</li> 123 + <li><strong>Restrict accounts</strong> &mdash; Accounts that repeatedly violate community standards may be restricted from appearing in the community feed.</li> 124 + <li><strong>Auto-moderation</strong> &mdash; Arabica uses automated content filtering that may automatically hide records pending moderator review.</li> 125 + </ul> 126 + <p class="text-brown-700 leading-relaxed mt-3"> 127 + Users can report content they believe violates community standards. All moderation actions are 128 + logged in an audit trail. Moderation only affects visibility within Arabica &mdash; your data 129 + in your PDS is never modified or deleted by moderators. 130 + </p> 131 + </section> 132 + <section> 133 + <h2 class="text-2xl font-semibold text-brown-800 mb-4">8. Account Termination</h2> 98 134 <p class="text-brown-700 leading-relaxed"> 135 + Arabica may restrict or terminate your access to the service if you violate these terms or 136 + community standards. Because your data lives in your PDS, termination from Arabica does not 137 + affect your data or your AT Protocol identity &mdash; you can still access your records through 138 + other AT Protocol applications. 139 + </p> 140 + </section> 141 + <section> 142 + <h2 class="text-2xl font-semibold text-brown-800 mb-4">9. Service Availability &amp; Third Parties</h2> 143 + <p class="text-brown-700 leading-relaxed mb-3"> 99 144 Arabica is provided "as is" without warranties of any kind. We make reasonable efforts to keep 100 145 the service running but do not guarantee uptime or availability. Since your data is stored in 101 - your PDS (not our servers), you won't lose your data if Arabica goes offline. 146 + your PDS rather than on Arabica's servers, you won't lose your data if Arabica goes offline. 147 + </p> 148 + <p class="text-brown-700 leading-relaxed"> 149 + Arabica depends on third-party services including your PDS provider and the AT Protocol relay 150 + network. Your PDS provider (e.g. Bluesky) hosts your data and has its own terms of service 151 + and data handling practices. We are not responsible for the availability, performance, or 152 + data handling practices of these third-party services. 102 153 </p> 103 154 </section> 104 155 <section> 105 - <h2 class="text-2xl font-semibold text-brown-800 mb-4">7. Privacy</h2> 156 + <h2 class="text-2xl font-semibold text-brown-800 mb-4">10. Limitation of Liability</h2> 157 + <p class="text-brown-700 leading-relaxed"> 158 + To the maximum extent permitted by law, Arabica and its operators shall not be liable for any 159 + indirect, incidental, special, consequential, or punitive damages, including but not limited to 160 + loss of data, loss of profits, or interruption of service, arising from your use of or inability 161 + to use the service. Our total liability for any claim related to the service shall not exceed 162 + the amount you have paid us in the twelve months preceding the claim (which, since Arabica is 163 + free, is zero). 164 + </p> 165 + </section> 166 + <section> 167 + <h2 class="text-2xl font-semibold text-brown-800 mb-4">11. Privacy</h2> 106 168 <p class="text-brown-700 leading-relaxed mb-3"> 107 169 <strong>All data on the AT Protocol is public.</strong> Records you create in Arabica &mdash; brews, beans, 108 170 equipment, likes, comments &mdash; are publicly accessible on your PDS and through the AT Protocol firehose. ··· 120 182 </ul> 121 183 </section> 122 184 <section> 123 - <h2 class="text-2xl font-semibold text-brown-800 mb-4">8. Open Source</h2> 124 - <p class="text-brown-700 leading-relaxed"> 125 - Arabica is open source software. You can review the code, run your own instance, or contribute 126 - improvements. The transparency of open source means you can verify that we're handling your data 127 - as described in these terms. 185 + <h2 class="text-2xl font-semibold text-brown-800 mb-4">12. Your Data Rights</h2> 186 + <p class="text-brown-700 leading-relaxed mb-3"> 187 + Regardless of where you are located, you have the following rights regarding data stored on 188 + Arabica's servers (the witness cache, session data, and moderation data &mdash; for data in 189 + your PDS, contact your PDS provider): 190 + </p> 191 + <ul class="list-disc list-inside space-y-2 text-brown-700"> 192 + <li><strong>Right to access</strong> &mdash; You can request a copy of the data we hold about you on our servers</li> 193 + <li><strong>Right to deletion</strong> &mdash; You can request that we remove your data from our witness cache, feed registry, and other server-side storage</li> 194 + <li><strong>Right to correction</strong> &mdash; Since your PDS is the source of truth, corrections are made by updating your PDS records, and the witness cache will reflect the change</li> 195 + </ul> 196 + <p class="text-brown-700 leading-relaxed mt-3"> 197 + To exercise these rights, contact us at 198 + <a href="mailto:mail@arabica.systems" class="link-bold">mail@arabica.systems</a>. 199 + We process data on the legal basis of legitimate interest (providing the community feed and 200 + social features you use). We do not transfer your data to third parties. 128 201 </p> 129 202 </section> 130 203 <section> 131 - <h2 class="text-2xl font-semibold text-brown-800 mb-4">9. Changes to Terms</h2> 204 + <h2 class="text-2xl font-semibold text-brown-800 mb-4">13. Open Source</h2> 132 205 <p class="text-brown-700 leading-relaxed"> 133 - We may update these terms occasionally. If we make significant changes, we'll notify users through 134 - the application. Continued use of Arabica after changes constitutes acceptance of the new terms. 206 + Arabica is open source software. You can review the code, run your own instance, or contribute 207 + improvements. The transparency of open source means you can verify that we're handling your data 208 + as described in these terms. 135 209 </p> 136 210 </section> 137 211 <section> 138 - <h2 class="text-2xl font-semibold text-brown-800 mb-4">10. Acceptable Use</h2> 212 + <h2 class="text-2xl font-semibold text-brown-800 mb-4">14. Acceptable Use</h2> 139 213 <p class="text-brown-700 leading-relaxed"> 140 214 Please use Arabica responsibly: 141 215 </p> ··· 146 220 </ul> 147 221 </section> 148 222 <section> 149 - <h2 class="text-2xl font-semibold text-brown-800 mb-4">11. Contact</h2> 223 + <h2 class="text-2xl font-semibold text-brown-800 mb-4">15. Changes to Terms</h2> 224 + <p class="text-brown-700 leading-relaxed"> 225 + We may update these terms occasionally. If we make significant changes, we'll notify users through 226 + the application. Continued use of Arabica after changes constitutes acceptance of the new terms. 227 + </p> 228 + </section> 229 + <section> 230 + <h2 class="text-2xl font-semibold text-brown-800 mb-4">16. Contact</h2> 150 231 <p class="text-brown-700 leading-relaxed"> 151 232 Questions about these terms? You can reach us through our GitHub repository or by email at 152 233 <a href="mailto:mail@arabica.systems" class="link-bold">mail@arabica.systems</a>.