This is a Next.js project bootstrapped with create-next-app.
A decentralized blogging platform built on Nostr protocol that allows users to:
- Create and edit long-form content
- Publish articles to Nostr network
- Read content from other authors
- Manage drafts and published posts
- Highlight text in blog posts (NIP-84 compliant)
The platform includes a comprehensive settings page for managing relay preferences:
Configure trusted relays for private events according to NIP-37:
- Read Only: Only receive private events from this relay
- Write Only: Only send private events to this relay
- Read & Write: Both send and receive private events with this relay
Publish relay preferences as Nostr events according to NIP-65:
- Network Publishing: Share your relay list with the Nostr network
- Cross-Device Sync: Your relay preferences sync across different devices
- Discovery: Other clients can discover your preferred relays
- Backup: Your relay preferences are stored on the Nostr network
- Relay Testing: Test connection to relays before adding them
- Cross-Sync: Sync relay lists from preferred relays
- Local Storage: Persistent storage of relay preferences
- Policy Management: Set read/write permissions for each relay
The platform supports text highlighting in blog posts according to NIP-84:
- Select Text: Click and drag to select any text in a blog post
- Context Menu: A context menu will appear with a "Highlight" option
- Create Highlight: Click "Highlight" to create a kind 9802 event
- Authentication: Must be logged in to create highlights
- Event Kind: 9802 (as specified in NIP-84)
- Content: The selected text
- Tags:
e: Reference to the highlighted postp: Reference to the post authora: Reference to the post as a longform articlestart/end: Position information (when available)
- Cross-Platform: Highlights are stored on the Nostr network and can be accessed by other clients
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun devOpen http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.
This project uses next/font to automatically optimize and load Geist, a new font family for Vercel.
To learn more about Next.js, take a look at the following resources:
- Next.js Documentation - learn about Next.js features and API.
- Learn Next.js - an interactive Next.js tutorial.
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.