#5 Reframe 'permanent/can't delete' copy around user data ownership & relay choice (onboarding, relay education, about)

Co-authored-by: shakespeare.diy <assistant@shakespeare.diy>
This commit is contained in:
shakespeare.diy 2026-08-27 09:59:43 +07:00
parent 8a6d84ca3d
commit 49325be38e
3 changed files with 7 additions and 7 deletions

View file

@ -113,8 +113,8 @@ export function RelayEducation({ onComplete, onSkip }: RelayEducationProps) {
<div className="flex items-start gap-3 p-3 rounded-lg bg-green-500/10 border border-green-500/20"> <div className="flex items-start gap-3 p-3 rounded-lg bg-green-500/10 border border-green-500/20">
<CheckCircle2 className="h-5 w-5 text-green-500 flex-shrink-0 mt-0.5" /> <CheckCircle2 className="h-5 w-5 text-green-500 flex-shrink-0 mt-0.5" />
<div> <div>
<span className="font-bold text-green-400">Your posts can't be deleted by others</span> <span className="font-bold text-green-400">You control where your data lives</span>
<p className="text-gray-400 text-xs mt-0.5">Data is distributed across the network</p> <p className="text-gray-400 text-xs mt-0.5">Your posts sync across relays you choose — pick your own, or run one yourself</p>
</div> </div>
</div> </div>
<div className="flex items-start gap-3 p-3 rounded-lg bg-amber-500/10 border border-amber-500/20"> <div className="flex items-start gap-3 p-3 rounded-lg bg-amber-500/10 border border-amber-500/20">

View file

@ -99,8 +99,8 @@ Version: v0.1.0`;
</div> </div>
<p className="text-gray-300 leading-relaxed"> <p className="text-gray-300 leading-relaxed">
Skateboarding knowledge should live with the community, not locked in corporate apps. Skateboarding knowledge should live with the community, not locked in corporate apps.
That's why SkateSpots runs on Nostr - a relay-based system where skaters control the data That's why SkateSpots runs on Nostr - a relay-based system where skaters control their own
and no company can delete your spots. data, choose which relays store it, and can even run their own. No single company owns the map.
</p> </p>
</CardContent> </CardContent>
</Card> </Card>

View file

@ -221,12 +221,12 @@ export default function OnboardingPage() {
</div> </div>
</div> </div>
<p className="text-sm text-gray-400 leading-relaxed mb-4"> <p className="text-sm text-gray-400 leading-relaxed mb-4">
Nostr is an open protocol — like email, but for social apps. Your account is a <strong className="text-white">cryptographic key pair</strong> that you own. No company can delete your spots, ban your account, or sell your data. Your identity works across every Nostr app. Nostr is an open protocol — like email, but for social apps. Your account is a <strong className="text-white">cryptographic key pair</strong> that you own. No single company controls your account or your data — you choose which relays store it, and you can even run your own. Your identity works across every Nostr app.
</p> </p>
<div className="grid grid-cols-2 gap-2 mb-4"> <div className="grid grid-cols-2 gap-2 mb-4">
{[ {[
{ icon: Shield, label: 'Your spots are permanent', color: 'text-red-400' }, { icon: Shield, label: 'You own your data & keys', color: 'text-red-400' },
{ icon: Lock, label: 'No one can ban you', color: 'text-orange-400' }, { icon: Lock, label: 'No company can ban you', color: 'text-orange-400' },
{ icon: Users, label: 'Identity works everywhere', color: 'text-purple-400' }, { icon: Users, label: 'Identity works everywhere', color: 'text-purple-400' },
{ icon: Zap, label: 'Direct Bitcoin tips', color: 'text-yellow-400' }, { icon: Zap, label: 'Direct Bitcoin tips', color: 'text-yellow-400' },
].map(({ icon: Icon, label, color }) => ( ].map(({ icon: Icon, label, color }) => (