Inspiration
Trading pain point* • After years of following Smart Money Concept (SMC) methods, we noticed a recurring problem: we "rarely" kept a consistent trading journal. Typing notes during fast-moving markets broke focus, and scribbles in Notion never matched the chart.
Voice is faster • Talking out loud before each entry felt natural, but raw audio files quickly became chaos. We wanted an assistant that could "hear" our reasoning, tag it with SMC terms (OB, FVG, liquidity grab), and remind us of emotional bias.
Recent AI APIs • The launch of ElevenLabs real-time STT, Tavus programmable video, and Supabase Edge Functions meant we could finally stitch voice ➜ text ➜ AI ➜ recap into a "one-weekend prototype".
What it does
- Record (≤ 60 s) – Tap the mic, speak your trade idea.
- AI Transcribe & Tag – ElevenLabs STT converts speech → text. A GPT-4o prompt extracts SMC keywords and sentiment (greedy, fearful, disciplined).
- Store & Search – Every entry (audio, transcript, tags) lives in Supabase with row-level security.
- Daily Recap Video – At 22:00 your local time, a cron Edge Function summarises the day’s notes and generates a 60-second Tavus avatar video + TTS voice-over.
- Dashboard – Browse prior notes, filter by tag, and track RRR / win-rate trends (placeholder data in MVP).
How we built it
| Layer | Tech |
|---|---|
| ⚡ Scaffolding | Bolt.new prompt → Next.js 14 PWA with shadcn/ui |
| 🎙️ Voice I/O | ElevenLabs STT/TTS (free 10k credits) |
| 🧠 LLM | OpenAI GPT-4o for tag extraction & recap script |
| 🎬 Video | Tavus API (60 s credit) for auto-generated coach videos |
| 🗄️ Backend | Supabase Postgres + Storage + Edge Functions |
| ☁️ Hosting | Netlify build + Edge (Deno) + cron |
Challenges we ran into
- Latency budget – Edge Functions run on CPU; we had to down-sample audio to 16 kHz mono to keep STT under 3 s.
- Keyword accuracy – GPT occasionally missed niche SMC jargon. We solved it with a "primer prompt" containing a mini-glossary.
- Privacy concerns – Traders hate leaks; we enforced Supabase RLS (user = UID) + deleted raw audio after STT.
- Tavus webhook delay – Video rendering could take minutes. We added a placeholder card that refreshes via SSE once the recap URL arrives.
Accomplishments that we're proud of
- Voice ➜ Video loop in under 30 seconds** round-trip on free tiers.
- Zero-server maintenance** using only Netlify Edge + Supabase.
- Accessible UX** – fully PWA-installable, dark-mode ready, one-tap recording.
What we learned
- ElevenLabs STT can diarise speakers—even in mixed Thai-English slang.
- Supabase Edge Functions + cron are perfect for night-batch jobs without spinning up separate services.
- A concise “primer prompt” boosts GPT tag precision from 76 % → 93 % (measured on 50 sample notes).
- Builders’ morale tip: Bolt.new removes 80 % boilerplate, letting us focus on product logic.
What's next for SMC Voice Journal
- Broker API sync – pull actual entry/exit tickets from OANDA & Binance to auto-validate journaling honesty.
- Emotion heat-map – visualise “fear” vs “greed” tags against P/L per session.
- Coach marketplace – let prop-firm mentors review journals for a fee (20 % platform cut).
- Mobile offline mode – queue voice notes when sailing through poor connections (React-Native Expo wrapper).
- Data-driven habits – weekly AI coach emails highlighting over-trading, revenge trades, and missed RR ≥ 3 setups.
Launch fast, iterate with traders, aim for bias-free, data-backed decisions. 🚀_
Built With
- bolt.new
- chart.js
- elevenlabs
- github
- javascript
- mediarecorder
- netlify
- next.js
- openai
- supabase
- tailwind
- tavus
- typescript
Log in or sign up for Devpost to join the conversation.