Quickstart guide
Get up and running with Hoot in just a few minutes. This guide covers everything from building the application to sending your first message.Prerequisites
Before you begin, ensure you have the following installed:- Rust 1.70 or later: Install from rust-lang.org
- OpenSSL development libraries: Required for cryptographic operations
- Perl: Required for the build process
On macOS, you can install OpenSSL via Homebrew:
brew install opensslOn Ubuntu/Debian: sudo apt-get install libssl-dev perlInstallation
Build the application
Build Hoot in release mode for optimal performance:This will compile the application with optimizations. The first build may take several minutes as it compiles all dependencies.
Alternative: Using Nix
If you have Nix with flakes enabled:First-time setup
When you first launch Hoot, you’ll be guided through the setup process:Account creation
Hoot will automatically generate a new Nostr keypair for you. Your keys are stored securely using platform-specific storage:
- macOS: Keychain API via
security-framework - Windows: Credential Manager
- Linux: Secret Service API with file-based fallback
Your private keys never leave your device and are stored in your operating system’s secure credential storage.
Configure relays
Connect to Nostr relays to send and receive messages. The relay pool manages multiple WebSocket connections with:
- Automatic reconnection every 5 seconds if disconnected
- Keepalive pings every 30 seconds to maintain connections
Sending your first message
Once setup is complete, you’re ready to send messages:Compose a new message
Click the compose button to open a new message window. Hoot supports multiple compose windows open simultaneously.
Add recipients
Enter recipient Nostr public keys or npub addresses in the To field. You can also add:
- CC recipients: Copy recipients who can see all other recipients
- BCC recipients: Hidden recipients that others cannot see
Write your message
Add a subject and message content. Your message will be:
- Converted to a custom kind 2024 mail event
- Wrapped using NIP-59 gift wrap for privacy
- Sent as separate wrapped events to each recipient
Understanding message flow
Here’s what happens when you send a message:Next steps
Explore features
Learn about threading, contacts, search, and more
Development build
Build without optimizations for faster compilation:
Profiling
For developers who want to analyze performance:127.0.0.1:8585 and attempts to launch puffin_viewer automatically.
Hoot uses the puffin profiler to track performance metrics. Enable the profiling feature during development to identify bottlenecks.