feat: revamp 'Uses' page with blockchain and dev tools

This commit is contained in:
Prad N
2025-07-14 11:34:01 +08:00
parent 4c261f07a8
commit 2d260ac894
15 changed files with 595 additions and 437 deletions
@@ -0,0 +1,90 @@
import { ArticleLayout } from '@/components/ArticleLayout'
export const article = {
author: 'Prad Nukala',
date: '2024-01-15',
title: 'Building Sonr: The Journey to Decentralized Identity',
description:
'How we're creating an IBC-enabled blockchain that puts users in control of their digital identity, eliminating passwords and seed phrases while maintaining true self-sovereignty.',
}
export const metadata = {
title: article.title,
description: article.description,
}
export default (props) => <ArticleLayout article={article} {...props} />
When I founded Sonr in 2020, I had a simple but ambitious vision: create a world where people truly own their digital identity. After years of watching data breaches, privacy violations, and the centralization of user data, I knew there had to be a better way.
## The Problem with Digital Identity Today
The internet wasn't designed with identity in mind. We've patched together solutions using usernames, passwords, and centralized databases, but these approaches are fundamentally broken:
- **No User Control**: Your identity lives on servers you don't control
- **Privacy Violations**: Companies monetize your personal data without consent
- **Security Nightmares**: Password breaches affect billions of users annually
- **Platform Lock-in**: Your identity is fragmented across countless services
## Enter Sonr: A New Paradigm
Sonr is an IBC-enabled blockchain specifically designed for decentralized identity. We're not just building another blockchain - we're creating the identity layer the internet should have had from the beginning.
### Key Innovations
1. **Passkey-Based Authentication**: No more passwords. Users authenticate with biometrics or device-based keys, making phishing virtually impossible.
2. **No Seed Phrases**: Using DKLS-MPC (Distributed Key Lifetime Security - Multi-Party Computation), we've eliminated the need for users to manage complex seed phrases while maintaining true ownership.
3. **Lightning-Fast Performance**: 600ms wallet generation means users can onboard as quickly as traditional web apps.
4. **IBC Integration**: As part of the Cosmos ecosystem, Sonr identities work seamlessly across multiple blockchains.
## Technical Architecture
At its core, Sonr leverages several cutting-edge technologies:
```typescript
// Example: Creating a Sonr identity
const identity = await Sonr.createIdentity({
authentication: 'passkey',
storage: 'ipfs',
recovery: 'social'
});
// The user now has a DID (Decentralized Identifier)
console.log(identity.did); // did:sonr:abc123...
```
### DID Documents
Every Sonr user has a DID document stored on-chain that contains their public keys and service endpoints. This document is the source of truth for their identity.
### IPFS Integration
User data is stored on IPFS, ensuring it's distributed, permanent, and under user control. Only the user's keys can decrypt their personal information.
### UCAN Tokens
We use User Controlled Authorization Networks (UCAN) for fine-grained access control. Users can delegate specific permissions without sharing their private keys.
## Real-World Impact
Since launching, we've:
- Raised $4.7M in funding to accelerate development
- Onboarded over 120 first-time blockchain developers
- Created tools that make blockchain accessible to mainstream developers
- Built partnerships across the Cosmos ecosystem
## The Road Ahead
We're currently preparing for our public testnet launch, with mainnet coming soon. Our goal is to onboard the next billion users to Web3 - not by forcing them to understand blockchain, but by making it invisible.
The future of the internet is one where:
- Users own their identity and data
- Privacy is default, not optional
- Security doesn't sacrifice usability
- Interoperability is built-in, not bolted-on
## Join the Revolution
If you're a developer interested in building on Sonr, check out our [documentation](https://docs.sonr.io) and [GitHub](https://github.com/sonr-io). We're always looking for contributors who share our vision of a more equitable internet.
The identity layer of the internet is broken, but together, we can fix it. Welcome to Sonr - where your identity truly belongs to you.
@@ -1,91 +0,0 @@
import { ArticleLayout } from '@/components/ArticleLayout'
import Image from 'next/image'
import designSystem from './planetaria-design-system.png'
export const article = {
author: 'Adam Wathan',
date: '2023-09-05',
title: 'Crafting an Identity system for a Multiplanetary future',
description:
'Most companies try to stay ahead of the curve when it comes to visual design, but for Sonr we needed to create a brand that would still inspire us 100 years from now when humanity has spread across our entire solar system.',
}
export const metadata = {
title: article.title,
description: article.description,
}
export default (props) => <ArticleLayout article={article} {...props} />
Most companies try to stay ahead of the curve when it comes to visual design, but for Sonr we needed to create a brand that would still inspire us 100 years from now when humanity has spread across our entire solar system.
<Image src={designSystem} alt="" />
I knew that to get it right I was going to have to replicate the viewing conditions of someone from the future, so I grabbed my space helmet from the closet, created a new Figma document, and got to work.
## Sermone fata
Lorem markdownum, bracchia in redibam! Terque unda puppi nec, linguae posterior
in utraque respicere candidus Mimasque formae; quae conantem cervice. Parcite
variatus, redolentia adeunt. Tyrioque dies, naufraga sua adit partibus celanda
torquere temptata, erit maneat et ramos, [iam](#) ait dominari
potitus! Tibi litora matremque fumantia condi radicibus opusque.
Deus feram verumque, fecit, ira tamen, terras per alienae victum. Mutantur
levitate quas ubi arcum ripas oculos abest. Adest [commissaque
victae](#) in gemitus nectareis ire diva
dotibus ora, et findi huic invenit; fatis? Fractaque dare superinposita
nimiumque simulatoremque sanguine, at voce aestibus diu! Quid veterum hausit tu
nil utinam paternos ima, commentaque.
```c
exbibyte_wins = gigahertz(3);
grayscaleUtilityClient = control_uat;
pcmciaHibernate = oop_virus_console(text_mountain);
if (stateWaisFirewire >= -2) {
jfs = 647065 / ldapVrml(tutorialRestore, 85);
metal_runtime_parse = roomComputingResolution - toolbarUpload +
ipx_nvram_open;
} else {
maximizeSidebar *= suffix_url(flatbed + 2, requirements_encoding_node +
only_qbe_media, minicomputer);
}
```
Aere repetiti cognataque natus. Habebat vela solutis saepe munus nondum adhuc
oscula nomina pignora corpus deserat.
## Lethaei Pindumve me quae dinumerat Pavor
Idem se saxa fata pollentibus geminos; quos pedibus. Est urnis Herses omnes nec
divite: et ille illa furit sim verbis Cyllenius.
1. Captus inpleverunt collo
2. Nec nam placebant
3. Siquos vulgus
4. Dictis carissime fugae
5. A tacitos nulla viginti
Ungues fistula annoso, ille addit linoque motatque uberior verso
[rubuerunt](#) confine desuetaque. _Sanguine_ anteit
emerguntque expugnacior est pennas iniqui ecce **haeret** genus: peiora imagine
fossas Cephisos formosa! Refugitque amata [refelli](#)
supplex. Summa brevis vetuere tenebas, hostes vetantis, suppressit, arreptum
regna. Postquam conpescit iuvenis habet corpus, et erratica, perdere, tot mota
ars talis.
```c
digital.webcam_dual_frequency = webmasterMms;
if (5 + language_standalone_google) {
cc_inbox_layout *= file_character;
task += p;
lockUnicode += enterprise_monochrome(tokenFunctionPersonal, keyVirtual,
adf);
}
windows_binary_esports(87734, array(restoreRomTopology, adRaw(407314),
dongleBashThumbnail), interpreter);
```
Sit volat naturam; motu Cancri. Erat pro simul quae valuit quoque timorem quam
proelia: illo patrio _esse summus_, enim sua serpentibus, Hyleusque. Est coniuge
recuso; refert Coroniden ignotos manat, adfectu.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

@@ -0,0 +1,131 @@
import { ArticleLayout } from '@/components/ArticleLayout'
export const article = {
author: 'Prad Nukala',
date: '2023-09-10',
title: 'The Future of Digital Identity: Self-Sovereign and Interoperable',
description:
'Digital identity is broken. Here's how decentralized identifiers (DIDs), verifiable credentials, and blockchain technology will create a future where you truly own your identity.',
}
export const metadata = {
title: article.title,
description: article.description,
}
export default (props) => <ArticleLayout article={article} {...props} />
Every day, billions of people prove who they are online using systems designed in the 1960s. Usernames and passwords were meant to be temporary solutions, yet here we are, six decades later, still typing "password123" and hoping for the best.
As someone who's been building technology since creating one of the first App Store apps, and now as a W3C Working Group Member for DIDs and WebAuthn, I've seen firsthand how broken our identity systems are. It's time for a fundamental shift.
## The Current Identity Crisis
Today's digital identity landscape is a disaster:
- **2.5 billion** records were exposed in data breaches last year
- The average person has **100+ passwords** to manage
- Identity theft affects **1 in 15 people** annually
- Users have **zero control** over their personal data
But the real problem isn't just security - it's ownership. Your digital identity doesn't belong to you. It belongs to Facebook, Google, your bank, your employer, and dozens of other entities.
## Enter Self-Sovereign Identity
Self-sovereign identity (SSI) flips the script. Instead of companies owning your identity, you do. Here's how it works:
### Decentralized Identifiers (DIDs)
A DID is like a phone number for your identity - unique, permanent, and owned by you. Unlike usernames, DIDs aren't controlled by any company.
```
did:sonr:1234567890abcdef
```
This simple string represents your entire digital identity, secured by cryptography rather than corporate databases.
### Verifiable Credentials
Imagine your driver's license, but digital and cryptographically verifiable. That's a verifiable credential. Your university can issue you a degree credential, your employer can issue an employment credential, and you store them in your digital wallet.
The magic? You can prove things about yourself without revealing everything. Need to prove you're over 21? You don't need to share your birthdate - just a cryptographic proof that you meet the requirement.
## The Sonr Implementation
At Sonr, we're not just theorizing about SSI - we're building it. Our approach combines:
1. **IBC-Enabled Blockchain**: Your identity works across multiple chains, not locked to one ecosystem
2. **IPFS Storage**: Your data is distributed and permanent, not sitting in vulnerable databases
3. **WebAuthn Integration**: Authenticate with your fingerprint, not passwords
4. **UCAN Authorization**: Grant specific permissions without sharing your keys
## Real-World Applications
This isn't just technology for technology's sake. Here's how SSI will change everyday life:
### Healthcare
- Carry your medical records with you
- Share only relevant information with providers
- Maintain privacy while ensuring continuity of care
### Finance
- Instant KYC/AML compliance without repeated paperwork
- Prove creditworthiness without exposing financial details
- Access global financial services with one identity
### Education
- Verifiable diplomas that can't be faked
- Instant credential verification for employers
- Lifelong learning records that follow you
### Travel
- Digital passports that speed up border crossings
- Vaccination records that are instantly verifiable
- One identity for all your travel needs
## The Technical Foundation
Building SSI requires solving complex technical challenges:
```typescript
// Creating a verifiable credential
const credential = await Sonr.createCredential({
type: 'UniversityDegree',
subject: userDID,
claims: {
degree: 'Computer Science',
graduationDate: '2023-05-15'
}
});
// Selective disclosure - prove graduation without revealing degree
const proof = await credential.generateProof({
reveal: ['graduationDate']
});
```
## Privacy by Design
Unlike current systems where privacy is an afterthought, SSI builds privacy in from the ground up:
- **Minimal Disclosure**: Share only what's necessary
- **User Consent**: Every data share requires explicit permission
- **Pseudonymity**: Use different identifiers for different contexts
- **Revocation**: Withdraw access to your data anytime
## The Path Forward
Transitioning to SSI won't happen overnight, but the momentum is building:
- W3C standards for DIDs and Verifiable Credentials are finalized
- Governments are piloting digital identity programs
- Major tech companies are adopting WebAuthn
- The EU's eIDAS 2.0 regulation mandates digital wallets by 2024
## Join the Identity Revolution
The future of identity isn't about better passwords or more secure databases. It's about fundamentally reimagining the relationship between individuals and their digital selves.
At Sonr, we're building this future today. Whether you're a developer wanting to integrate SSI, an organization looking to issue credentials, or just someone tired of password resets, there's a place for you in this revolution.
The question isn't whether self-sovereign identity will replace current systems - it's how quickly we can make it happen. The technology is here. The standards are set. Now we need builders, advocates, and early adopters to make it reality.
Your identity belongs to you. It's time we built an internet that respects that.
@@ -1,106 +0,0 @@
import { ArticleLayout } from '@/components/ArticleLayout'
export const article = {
author: 'Adam Wathan',
date: '2023-09-02',
title: 'Introducing Animaginary: High performance web animations',
description:
'When youre building a website for a company as ambitious as Sonr, you need to make an impression. I wanted people to visit our website and see animations that looked more realistic than reality itself.',
}
export const metadata = {
title: article.title,
description: article.description,
}
export default (props) => <ArticleLayout article={article} {...props} />
When youre building a website for a company as ambitious as Sonr, you need to make an impression. I wanted people to visit our website and see animations that looked more realistic than reality itself.
To make this possible, we needed to squeeze every drop of performance out of the browser possible. And so Animaginary was born.
```js
import { animate } from '@planetaria/animaginary'
export function MyComponent({ open, children }) {
return (
<animate.div
in={open}
animateFrom="opacity-0 scale-95"
animateTo="opacity-100 scale-100"
duration={350}
>
{children}
</animate.div>
)
}
```
Animaginary is our new web animation library that redefines what you thought was possible on the web. Hand-written in optimized WASM, Animaginary can even animate the `height` property of an element at 60fps.
## Sermone fata
Lorem markdownum, bracchia in redibam! Terque unda puppi nec, linguae posterior
in utraque respicere candidus Mimasque formae; quae conantem cervice. Parcite
variatus, redolentia adeunt. Tyrioque dies, naufraga sua adit partibus celanda
torquere temptata, erit maneat et ramos, [iam](#) ait dominari
potitus! Tibi litora matremque fumantia condi radicibus opusque.
Deus feram verumque, fecit, ira tamen, terras per alienae victum. Mutantur
levitate quas ubi arcum ripas oculos abest. Adest [commissaque
victae](#) in gemitus nectareis ire diva
dotibus ora, et findi huic invenit; fatis? Fractaque dare superinposita
nimiumque simulatoremque sanguine, at voce aestibus diu! Quid veterum hausit tu
nil utinam paternos ima, commentaque.
```c
exbibyte_wins = gigahertz(3);
grayscaleUtilityClient = control_uat;
pcmciaHibernate = oop_virus_console(text_mountain);
if (stateWaisFirewire >= -2) {
jfs = 647065 / ldapVrml(tutorialRestore, 85);
metal_runtime_parse = roomComputingResolution - toolbarUpload +
ipx_nvram_open;
} else {
maximizeSidebar *= suffix_url(flatbed + 2, requirements_encoding_node +
only_qbe_media, minicomputer);
}
```
Aere repetiti cognataque natus. Habebat vela solutis saepe munus nondum adhuc
oscula nomina pignora corpus deserat.
## Lethaei Pindumve me quae dinumerat Pavor
Idem se saxa fata pollentibus geminos; quos pedibus. Est urnis Herses omnes nec
divite: et ille illa furit sim verbis Cyllenius.
1. Captus inpleverunt collo
2. Nec nam placebant
3. Siquos vulgus
4. Dictis carissime fugae
5. A tacitos nulla viginti
Ungues fistula annoso, ille addit linoque motatque uberior verso
[rubuerunt](#) confine desuetaque. _Sanguine_ anteit
emerguntque expugnacior est pennas iniqui ecce **haeret** genus: peiora imagine
fossas Cephisos formosa! Refugitque amata [refelli](#)
supplex. Summa brevis vetuere tenebas, hostes vetantis, suppressit, arreptum
regna. Postquam conpescit iuvenis habet corpus, et erratica, perdere, tot mota
ars talis.
```c
digital.webcam_dual_frequency = webmasterMms;
if (5 + language_standalone_google) {
cc_inbox_layout *= file_character;
task += p;
lockUnicode += enterprise_monochrome(tokenFunctionPersonal, keyVirtual,
adf);
}
windows_binary_esports(87734, array(restoreRomTopology, adRaw(407314),
dongleBashThumbnail), interpreter);
```
Sit volat naturam; motu Cancri. Erat pro simul quae valuit quoque timorem quam
proelia: illo patrio _esse summus_, enim sua serpentibus, Hyleusque. Est coniuge
recuso; refert Coroniden ignotos manat, adfectu.
@@ -1,101 +0,0 @@
import { ArticleLayout } from '@/components/ArticleLayout'
export const article = {
author: 'Adam Wathan',
date: '2023-07-14',
title: 'Rewriting the Sonr MPC Protocol',
description:
'When we released the Sonr devnet last year, it was functional, secure - but incredibly slow. We took a look inside the system to uncover the bottlenecks and found that the MPC protocol was the culprit. The resulting upgrade made our protocol 180x faster.',
}
export const metadata = {
title: article.title,
description: article.description,
}
export default (props) => <ArticleLayout article={article} {...props} />
When we released the first version of cosmOS last year, it was written in Go. Go is a wonderful programming language with a lot of benefits, but its been a while since Ive seen an article on the front page of Hacker News about rewriting some important tool in Go and I see articles on there about rewriting things in Rust every single week.
```rust
use ferris_says::say;
use std::io::{stdout, BufWriter};
fn main() {
let stdout = stdout();
let message = String::from("Hello fellow hackers");
let width = message.chars().count();
let mut writer = BufWriter::new(stdout.lock());
say(message.as_bytes(), width, &mut writer).unwrap();
}
```
I derive a large amount of my self-worth from whether or not Hacker News is impressed with the work I'm doing, so when I realized this, I cancelled all of our existing projects and started migrating everything to Rust immediately.
## Sermone fata
Lorem markdownum, bracchia in redibam! Terque unda puppi nec, linguae posterior
in utraque respicere candidus Mimasque formae; quae conantem cervice. Parcite
variatus, redolentia adeunt. Tyrioque dies, naufraga sua adit partibus celanda
torquere temptata, erit maneat et ramos, [iam](#) ait dominari
potitus! Tibi litora matremque fumantia condi radicibus opusque.
Deus feram verumque, fecit, ira tamen, terras per alienae victum. Mutantur
levitate quas ubi arcum ripas oculos abest. Adest [commissaque
victae](#) in gemitus nectareis ire diva
dotibus ora, et findi huic invenit; fatis? Fractaque dare superinposita
nimiumque simulatoremque sanguine, at voce aestibus diu! Quid veterum hausit tu
nil utinam paternos ima, commentaque.
```c
exbibyte_wins = gigahertz(3);
grayscaleUtilityClient = control_uat;
pcmciaHibernate = oop_virus_console(text_mountain);
if (stateWaisFirewire >= -2) {
jfs = 647065 / ldapVrml(tutorialRestore, 85);
metal_runtime_parse = roomComputingResolution - toolbarUpload +
ipx_nvram_open;
} else {
maximizeSidebar *= suffix_url(flatbed + 2, requirements_encoding_node +
only_qbe_media, minicomputer);
}
```
Aere repetiti cognataque natus. Habebat vela solutis saepe munus nondum adhuc
oscula nomina pignora corpus deserat.
## Lethaei Pindumve me quae dinumerat Pavor
Idem se saxa fata pollentibus geminos; quos pedibus. Est urnis Herses omnes nec
divite: et ille illa furit sim verbis Cyllenius.
1. Captus inpleverunt collo
2. Nec nam placebant
3. Siquos vulgus
4. Dictis carissime fugae
5. A tacitos nulla viginti
Ungues fistula annoso, ille addit linoque motatque uberior verso
[rubuerunt](#) confine desuetaque. _Sanguine_ anteit
emerguntque expugnacior est pennas iniqui ecce **haeret** genus: peiora imagine
fossas Cephisos formosa! Refugitque amata [refelli](#)
supplex. Summa brevis vetuere tenebas, hostes vetantis, suppressit, arreptum
regna. Postquam conpescit iuvenis habet corpus, et erratica, perdere, tot mota
ars talis.
```c
digital.webcam_dual_frequency = webmasterMms;
if (5 + language_standalone_google) {
cc_inbox_layout *= file_character;
task += p;
lockUnicode += enterprise_monochrome(tokenFunctionPersonal, keyVirtual,
adf);
}
windows_binary_esports(87734, array(restoreRomTopology, adRaw(407314),
dongleBashThumbnail), interpreter);
```
Sit volat naturam; motu Cancri. Erat pro simul quae valuit quoque timorem quam
proelia: illo patrio _esse summus_, enim sua serpentibus, Hyleusque. Est coniuge
recuso; refert Coroniden ignotos manat, adfectu.
@@ -0,0 +1,97 @@
import { ArticleLayout } from '@/components/ArticleLayout'
export const article = {
author: 'Prad Nukala',
date: '2023-11-20',
title: 'Why Blockchain Needs Better UX (And How We're Fixing It)',
description:
'The biggest barrier to blockchain adoption isn't scalability or regulation - it's user experience. Here's how we're making Web3 as easy as Web2.',
}
export const metadata = {
title: article.title,
description: article.description,
}
export default (props) => <ArticleLayout article={article} {...props} />
Ask any blockchain developer about the biggest challenge facing our industry, and you'll hear about scalability, regulation, or interoperability. But after years of building in this space and onboarding over 120 developers to blockchain, I've learned the real barrier is much simpler: user experience.
## The UX Crisis in Web3
Let's be honest about the current state of blockchain UX:
- **Seed Phrases**: Asking users to write down 24 random words and never lose them is a non-starter for mainstream adoption
- **Gas Fees**: Imagine if every click on the internet cost money and required manual approval
- **Addresses**: 42-character hexadecimal strings are not how humans think about identity
- **Transaction Times**: Waiting minutes for confirmations kills any semblance of modern app experience
These aren't technical limitations - they're design choices we've accepted as "the way blockchain works."
## Learning from History
When I created one of the first 5,000 apps on the App Store at age 12, the iPhone had just made computing accessible to everyone. Not by making people understand computers, but by hiding the complexity behind intuitive interfaces.
Blockchain needs its iPhone moment.
## The Sonr Approach
At Sonr, we've rethought blockchain UX from first principles:
### 1. No Seed Phrases
Using DKLS-MPC technology, users never see or manage private keys. Account recovery uses familiar methods like email or social recovery - not a piece of paper in a safe.
### 2. Instant Onboarding
Our 600ms wallet generation means users can start using blockchain apps as quickly as they'd sign up for any web service. No downloads, no extensions, no friction.
### 3. Passkey Authentication
Leveraging WebAuthn standards, users authenticate with their fingerprint or face - the same way they unlock their phones. It's more secure than passwords and infinitely more user-friendly.
### 4. Invisible Blockchain
Users shouldn't need to understand consensus mechanisms any more than they need to understand TCP/IP to browse the web. Blockchain should be infrastructure, not interface.
## Real Code, Real Solutions
Here's how simple it is to integrate Sonr:
```javascript
// Traditional Web3
const accounts = await ethereum.request({
method: 'eth_requestAccounts'
});
// User must have MetaMask installed
// User must understand gas fees
// User must protect seed phrase
// With Sonr
const user = await Sonr.authenticate();
// That's it. No wallet required.
// No seed phrases. Just works.
```
## The Broader Impact
Better UX isn't just about convenience - it's about accessibility and inclusion. When we make blockchain easier to use, we:
- **Reduce Scams**: Simpler interfaces mean fewer opportunities for user error
- **Increase Adoption**: Lower barriers mean more users and developers
- **Enable Innovation**: When basics are solved, builders can focus on novel applications
## Looking Forward
As a W3C Working Group Member, I'm helping shape standards that will make these UX improvements universal. The future of blockchain isn't about teaching billions of people new concepts - it's about making those concepts invisible.
## The Challenge to Builders
If you're building in Web3, ask yourself:
- Would my parents be able to use this?
- Does it require reading documentation?
- Are there more than 3 steps to get started?
If the answer to any of these is yes, we have work to do.
## Join the UX Revolution
The blockchain industry has brilliant technologists, but we need more designers, more product thinkers, and more people who put users first. If you're interested in making blockchain accessible to everyone, [reach out](mailto:prad.nukala@sonr.io).
The future of the internet depends on making it usable by everyone, not just the technically sophisticated. Let's build that future together.