AURA is a censorship-resistant social messenger built on the Nostr protocol.
It empowers people to communicate freely, without fear of surveillance or censorship.
Because freedom of speech is a human right, not a privilege.
π Live Demo Β· π Documentation Β· π Report Bug Β· π‘ Request Feature
In a world where social platforms control what you see, who you can reach, and what you can say β AURA offers an alternative. Built on the Nostr protocol, AURA is:
- π Truly Decentralized β No single company controls your data or can ban you
- π‘οΈ Censorship Resistant β Your voice cannot be silenced by any authority
- π Privacy First β End-to-end encrypted direct messages (NIP-44)
- β‘ Lightning Integrated β Send and receive Bitcoin payments via NWC
- π Open Source β Transparent, auditable, and community-driven
- π± PWA Ready β Install on any device, works offline
"They can't stop the signal."
- Global and personalized feeds
- Real-time updates via WebSocket subscriptions
- Infinite scroll with optimistic UI updates
- Create posts, reply, repost, and react
- End-to-end encrypted DMs (NIP-04 & NIP-44)
- Conversation list with unread indicators
- Real-time message delivery
- Offline message queue
- View and edit your Nostr profile
- Follow/unfollow users
- Contact list management (NIP-02)
- Verified user badges (NIP-05)
- Nostr Wallet Connect (NWC) integration
- Send and receive Bitcoin payments
- Transaction history
- β‘ Zap support for posts and users
- Search notes by content
- Find users by name or npub
- Discover hashtags
- Trending topics
- Relay management
- Theme customization (light/dark)
- Language selection (EN, ES, RU, ZH)
- Data export and cache management
| Category | Technology |
|---|---|
| Framework | SvelteKit 2 + Svelte 5 |
| Language | TypeScript (strict mode) |
| Styling | Tailwind CSS 4 |
| Nostr | NDK (Nostr Dev Kit) |
| Database | Dexie.js (IndexedDB wrapper) |
| Crypto | @noble libraries |
| Testing | Vitest + Playwright |
| Icons | Lucide |
| Validation | Zod |
# Clone the repository
git clone https://github.com/FrankFMY/AURA.git
cd AURA
# Install dependencies
bun install
# Start development server
bun run devOpen http://localhost:5173 in your browser.
# Create production build
bun run build
# Preview production build
bun run previewAURA/
βββ src/
β βββ lib/
β β βββ components/ # Reusable UI components
β β β βββ feed/ # Feed-related components
β β β βββ notifications/
β β β βββ ui/ # Base UI components
β β βββ core/ # Core utilities (errors, resilience)
β β βββ db/ # Dexie.js database
β β βββ i18n/ # Internationalization
β β βββ services/ # Business logic services
β β β βββ crypto/ # Encryption (NIP-44)
β β β βββ ndk/ # NDK service modules
β β β βββ wallet/ # NWC client
β β βββ stores/ # Svelte 5 runes stores
β β βββ utils/ # Utility functions
β β βββ validators/ # Zod schemas & sanitization
β βββ routes/ # SvelteKit routes
β βββ app.css # Global styles
βββ static/ # Static assets
βββ tests/ # Test files
β βββ e2e/ # Playwright E2E tests
β βββ unit/ # Vitest unit tests
βββ ...config files
| NIP | Description | Status |
|---|---|---|
| NIP-01 | Basic protocol | β |
| NIP-02 | Contact List | β |
| NIP-04 | Encrypted DMs (legacy) | β |
| NIP-05 | DNS Verification | β |
| NIP-07 | Browser Extension | β |
| NIP-10 | Replies & Threading | β |
| NIP-18 | Reposts | β |
| NIP-25 | Reactions | β |
| NIP-44 | Versioned Encryption | β |
| NIP-47 | Nostr Wallet Connect | β |
bun run dev # Start development server
bun run build # Build for production
bun run preview # Preview production build
bun run check # Type-check with svelte-check
bun run test # Run unit tests
bun run test:e2e # Run E2E tests
bun run test:coverage # Run tests with coverageAURA is optimized for deployment on Vercel:
AURA can also be deployed to GitHub Pages using the included workflow.
For maximum censorship resistance, deploy AURA to IPFS:
# Using Pinata (set PINATA_API_KEY and PINATA_API_SECRET first)
bun run deploy:ipfs --provider pinata
# Using local IPFS node
bun run deploy:ipfs --provider localOnce deployed, access AURA via any IPFS gateway:
https://ipfs.io/ipfs/<CID>https://dweb.link/ipfs/<CID>https://cloudflare-ipfs.com/ipfs/<CID>
Contributions are what make the open source community amazing! Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
See CONTRIBUTING.md for detailed guidelines.
AURA takes security seriously. If you discover a security vulnerability, please report it responsibly:
- Email: Pryanishnikovartem@gmail.com
- Subject: [SECURITY] AURA Vulnerability Report
Please do not create public issues for security vulnerabilities.
See SECURITY.md for our security policy.
This project is licensed under the MIT License β see the LICENSE file for details.
This means you can:
- β Use it commercially
- β Modify it freely
- β Distribute it
- β Use it privately
AURA is a client-side interface for the Nostr protocol. We do not host, store, or control any user content. All cryptographic keys are stored locally on the user's device. Content displayed in AURA is fetched from decentralized relays operated by independent third parties.
The developers of AURA:
- Do not have access to user private keys or messages
- Cannot modify or delete content published by users
- Are not responsible for content published on the Nostr network
- Cannot comply with takedown requests as we do not host content
For concerns about specific content, please contact the relay operators directly.
If AURA has helped you, consider supporting its development:
classywallaby932694@getalby.com
DANryD6MxNr3BQcYZN3rao9qM4VzS2sx7sHy944emPH2
0xC2335f06ab8Ef2512375bB8Cd2c07A7Bd1589A6e
- β Star this repository
- π Report bugs and suggest features
- π Improve documentation
- π Help with translations
- π’ Spread the word about Nostr and AURA
- Nostr Protocol β For creating a truly decentralized protocol
- NDK β For the excellent Nostr development kit
- Svelte β For the amazing framework
- All Contributors β Who help make this project better