New to iStory? This guide will walk you through creating your first voice journal entry in just a few minutes.
What You’ll Build
By the end of this guide, you’ll have:- ✅ Connected your account
- ✅ Recorded your first story using voice
- ✅ Enhanced it with AI
- ✅ Saved it permanently with encryption
Sign In to iStory
iStory supports two authentication methods:You’ll be redirected to Google’s OAuth consent screen. After authorization, you’ll be automatically redirected back to iStory.After signing in, you’ll see your profile info in the top right corner.
Option 1: Google OAuth (Recommended for beginners)
Click the “Start Journaling — Free” button on the homepage:Option 2: Web3 Wallet
Connect your MetaMask or compatible wallet:app/api/auth/nonce/route.ts
Security Note: Wallet authentication uses server-generated nonces with 5-minute expiry to prevent signature replay attacks.
Navigate to Record Page
Click the “Record New Story” button or navigate to 
/record.You’ll see the recording interface with:- 🎙️ Microphone button for voice recording
- 📝 Text editor for transcription
- ✨ AI enhancement tools
- 💾 Save options

Record Your Story
Start Recording
Click the microphone button to start recording:app/record/RecordPageClient.tsx
- Your day
- A memory or experience
- Something on your mind
- A realization or insight
Transcribe Your Audio
After stopping, your audio is automatically transcribed using ElevenLabs Scribe:Response Example
Save Your Story
Add Metadata
Before saving, you can add:- Title (auto-generated if blank)
- Mood (happy, reflective, anxious, etc.)
- Tags (topics, themes)
- Visibility (public/private)
- Date (can backdate entries)
Click Save
app/api/journal/save/route.ts
Cloud Storage
Your story is saved to Supabase (PostgreSQL) with full encryption
Local Vault
Optionally encrypted client-side using AES-256-GCM in IndexedDB
What Happens After Save?
- Story saved to database with your author ID
- AI analysis triggered (extracts themes, emotions, entities)
- Audio uploaded to Supabase Storage (if you recorded)
- Local vault copy created (if vault is unlocked)
- CRE verification queued (blockchain attestation)
Success! Your story is now permanently saved. You’ll see a success message and can view it in your Library.
Explore Your Story
Navigate to Library (
/library) to see your saved stories.View AI Insights
Click on any story to see AI-generated insights:components/StoryInsights.tsx

Insights Include
- 🧠 Themes: Key topics extracted from your story
- 💭 Emotional Tone: Detected mood (hopeful, reflective, joyful)
- 🏷️ Life Domains: Categories (relationships, work, health, etc.)
- 👥 Entities: People, places, and times mentioned
- ⭐ Significance Score: AI-rated importance (0-10)
Example AI Metadata
Next Steps
Explore Features
Learn about AI patterns, vault encryption, and blockchain verification
Set Up Local Vault
Enable client-side encryption for maximum privacy
Share Stories
Make stories public and engage with the community
API Reference
Integrate iStory with your own applications
Common Questions
How long does transcription take?
How long does transcription take?
Transcription typically takes 2-5 seconds using ElevenLabs Scribe. The API processes audio at high speed with 95%+ accuracy.
Is my audio stored?
Is my audio stored?
Yes, if you record audio, it’s uploaded to Supabase Storage and linked to your story. You can play it back anytime from the Library or Story detail page.
Can I edit a story after saving?
Can I edit a story after saving?
Yes! Click on any story in your Library and select “Edit” to modify the title, content, mood, tags, or visibility.
What if I close the page while recording?
What if I close the page while recording?
Your draft is auto-saved to sessionStorage every 500ms. If you reload the page, you’ll see a “Restored unsaved draft” message.
How do I delete a story?
How do I delete a story?
From the Library, click the three-dot menu on any story card and select “Delete”. This action is permanent.