Features by Interface
Which HiveJournal features are available where. The grid below maps every shipped feature to the four primary surfaces the product is delivered through.
The four interfaces:
| Code | Interface | Where it lives |
|---|
| Web | hivejournal.com (Next.js dashboard + public pages) | apps/frontend/ |
| Mobile | iOS / Android companion (React Native + Expo, pre-release) | apps/mobile/ |
| JQ Chat | The in-app JQ chatbot drawer (available inside the web dashboard) | apps/frontend/src/components/chat/Chatbot.tsx |
| Extension | JQ / DreamPro Chrome Extension (popup + side panel + context menu) | apps/chrome-extension/ |
Cell legend: ✅ shipped · 🟡 partial / read-only / limited · ❌ not available · — not applicable to this surface
The source of truth for what exists is docs/ai/INDEX.md. This doc is the cross-cut: same features, sliced by surface instead of by category.
Core journaling
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| Create / edit journal entries | ✅ | ✅ | 🟡 (via NL — converts chat into entry) | ❌ |
| Notebooks (group entries) | ✅ | ✅ | 🟡 (mention #notebook to scope) | ❌ |
| "Other" pseudo-notebook for orphan entries | ✅ | 🟡 (entries appear; no dedicated screen) | — | — |
| Dashboard search + filter chips (recency / notebook / tag / @person) | ✅ | 🟡 (basic list, no chip row yet) | — | — |
| @mentions on entries (auto-extracted, indexed) | ✅ | ✅ (extraction is server-side) | ✅ | ✅ |
| Visibility system (public / team / org / user) | ✅ | 🟡 (read-only respect; editor in progress) | — | — |
| Entry sharing + OG cards | ✅ | ✅ (share sheet) | — | — |
| Stream view (visual timeline) | ✅ | ✅ | — | — |
Personal family
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| Family members + per-member routines + daily check-ins | ✅ | ❌ (planned) | ❌ | ❌ |
| Future: linked kid accounts via JQ Bridge | 🟡 (schema ready, UI pending) | ❌ | ❌ | ❌ |
Odessa + Graphic Novels + Import
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| Odessa — personalized story seed from journal data | ✅ | ❌ | ❌ | ❌ |
| Graphic Novel notebooks (co-create panel by panel) | ✅ | ❌ | ❌ | ❌ |
| Auto-generate full story (Flash 3pg / Short Story 9pg) | ✅ | ❌ | ❌ | ❌ |
| Storyboard management (drag-to-reorder, chapter markers) | ✅ | ❌ | ❌ | ❌ |
| Journal import (Day One, Journey, CSV) | ✅ | ❌ | ❌ | ❌ |
| /see-your-story public landing | ✅ | ❌ | ❌ | ❌ |
Tracking & wellness
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| Satisfaction quick values | ✅ | ✅ | 🟡 (log via NL) | ❌ |
| Sleep tracker | ✅ | ✅ | 🟡 (log via NL) | ❌ |
| Action notes (quick activities) | ✅ | ✅ | 🟡 (log via NL) | ❌ |
| Health actions & recommendations | ✅ | 🟡 (recommendations only) | 🟡 | ❌ |
AI & insights
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| JQ AI Companion (chat) | ✅ | ❌ (planned) | ✅ (this is the JQ Chat surface) | 🟡 (popup proxies tasks NL only; no full chat) |
| Note analysis (tone / mood / energy / sleep) | ✅ (/dashboard/analysis) | 🟡 (read-only summaries) | ✅ (grounds responses) | ❌ |
| AI background image generation (DALL-E) | ✅ (entry editor) | ❌ | ❌ | ❌ |
| AI quotes (ZenQuotes) | ✅ | ✅ | ✅ | ❌ |
| Reframe selected text / Silver Lining | ❌ | ❌ | ❌ | ✅ (context menu + side panel) |
Social & connections
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| JQ Bridge (user-to-user connections) | ✅ | 🟡 (accept invite + view) | ❌ | ❌ |
| Organizations & teams | ✅ | 🟡 (read-only) | — | — |
| Linked accounts (multi-account aggregation) | ✅ | ✅ | 🟡 (respected when grounding) | ❌ |
| JQ Bridge accept-invite flow | ✅ (/jq-bridge/accept/[token]) | 🟡 (deep link → web) | — | — |
Gamification & currency
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| Drops currency (balance + ledger) | ✅ | ✅ | 🟡 (read balance) | ❌ |
| Encouragement Drops (send / receive) | ✅ | ✅ | 🟡 (notify on receive) | ❌ |
| Encouragement Badges | ✅ | ✅ | — | — |
| Tone Packs (browse / buy / upload) | ✅ | 🟡 (browse only) | — | — |
Goals & activity
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| Accountability Goals | ✅ | ✅ | 🟡 (NL add / status) | ❌ |
| Dream Pro (private goals + AI step breakdown) | ✅ | ✅ | 🟡 (NL add / progress) | ❌ |
| Workout Window (chains / battles / mosaic) | ✅ | ✅ | 🟡 (chain status) | ❌ |
Tasks & calendar
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
Personal tasks (user_tasks) | ✅ | ❌ (planned — see REACT_NATIVE_FEATURE_PARITY_PLAN_2026) | ✅ (add #routine to …) | ✅ (Quick Tasks input in popup) |
Product tasks (product_tasks, super-admin) | ✅ (/dashboard/admin/tasks) | ❌ | ✅ (auto-routed for super-admins) | ✅ (auto-routed for super-admins) |
Natural-language task commands (/nl-command) | 🟡 (input on tasks page) | ❌ | ✅ | ✅ |
| Recurring task templates + spawn-due | ✅ | ❌ | ✅ (every other day) | 🟡 (creatable, no UI to manage) |
| Google Calendar sync (auto-mirror tasks with due dates) | ✅ | ❌ | ✅ (transparent) | ✅ (transparent) |
Note ↔ task bidirectional links (source_entry_id) | ✅ (banner on entry, swap card in notebook, "from note" chip on task) | 🟡 (link visible, no swap) | ✅ (scan_recent_notes apply step writes link) | ❌ |
JQ Routines
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| Background routines (toggle / cadence / Run Now) | ✅ (/dashboard/jq-routines) | ❌ | 🟡 (manual run via NL) | ❌ |
| Built-in: Weekly Review | ✅ (/dashboard/review) | 🟡 (read-only) | ✅ (auto-runs on chat open if stale) | ❌ |
| Built-in: Spawn Recurring Tasks | ✅ (background) | ✅ (background) | ✅ (runs on chat open if stale > 6h) | ❌ |
| Built-in: Scan Recent Notes (extract task candidates) | ✅ | ❌ | ✅ (chat card + "Add all as tasks") | ❌ |
| Built-in: Rebuild Life Map | ✅ | ❌ | ✅ (runs on chat open if stale > 24h) | ❌ |
| Natural-language routine creation | ✅ | ❌ | ✅ | ❌ |
Life Map
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| Brain Map / Spheres / Hierarchy / Timeline / People-First viewpoints | ✅ | ❌ (planned) | — | — |
| Node Detail drawer (drill-through) | ✅ | ❌ | 🟡 (NL: "tell me about @sarah") | ❌ |
| Semantic node search ("who do I work out with?") | ✅ | ❌ | ✅ (grounded responses use it) | ❌ |
| Pin nodes on the Brain Map (drag to fix position) | ✅ | ❌ | — | — |
| Manual edge editing (add / remove / re-kind) | ✅ | ❌ | ❌ | ❌ |
| Map maintenance (rename / merge / delete nodes) | ✅ | ❌ | ❌ | ❌ |
Customization
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| Display names (auto-generated pseudonyms) | ✅ | ✅ | — | — |
| Hierarchical fonts (entry > notebook > user) | ✅ | 🟡 (resolved at render only) | — | — |
| Cover & background images | ✅ | ✅ | — | — |
| Theme (light / dark) | ✅ | ✅ (system) | ✅ (inherits) | ✅ (inherits) |
User profile (/dashboard/settings) | ✅ | ✅ | — | — |
Open Energy (legacy public routes)
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| Public landing + experiments + contributors | ✅ (/open-energy/*) | 🟡 (web-view fallback) | — | — |
Active development for the public community layer has moved to the DreamPro Citizen Science Platform below.
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| Templates browse + detail (clone / replicate / build / video submission) | ✅ | ❌ (planned) | ❌ | ❌ |
| Phase 1 — Citizen Scientist World Map | ✅ (/dreampro/map) | ❌ | ❌ | ❌ |
| Phase 1 — Opt-in form | ✅ (/dreampro/citizen-scientist) | ❌ | ❌ | ❌ |
| Phase 2 — Annual competition leaderboard | ✅ (/dreampro/competition/[slug]) | ❌ | ❌ | ❌ |
| Phase 3a — Sponsors directory + apply | ✅ | ❌ | ❌ | ❌ |
| Phase 3b — Opportunities (internships / scholarships / fellowships / mentorships) | ✅ | ❌ | ❌ | ❌ |
| Phase 3c — Sponsorable participants + outreach (Resend-relayed) | ✅ | ❌ | ❌ | ❌ |
| Phase 3c — Sponsor inbox + reply-tracking toggle | ✅ | ❌ | ❌ | ❌ |
| Phase 4 — Local meetup groups & events + RSVPs | ✅ | ❌ | ❌ | ❌ |
| Phase 4 — Upcoming events surfaced on the world map (ephemeral pins) | ✅ | ❌ | ❌ | ❌ |
| Experiment calculators (6 modules: resonance, coil, impedance, electrolysis, pulsed, plasma) | ✅ | ❌ | ❌ | ❌ |
| Structured measurements — record predicted vs measured with real-time delta badges | ✅ | ❌ | ❌ | ❌ |
| Parameter optimizer — automated sweep + "confirm this prediction" invitations | ✅ | ❌ | ❌ | ❌ |
| Aggregate results — histograms, convergence bar toward 50 confirmations, anomaly detection | ✅ | ❌ | ❌ | ❌ |
| Phase 5 — K-12 classrooms (COPPA-safe) | ✅ | ❌ | ❌ | ❌ |
| Phase 6 — Family teams | ✅ | ❌ | ❌ | ❌ |
| DreamPro Junior — kit waitlist (validation, pre-product) | ✅ | ❌ | ❌ | ❌ |
| Phase 7 — Manual scoring trigger (super-admin) | ✅ | ❌ | ❌ | ❌ |
| Phase 8a — Dream videos (YouTube embed via oEmbed) | ✅ | ❌ | ❌ | ❌ |
| Phase 8b — DreamPro YouTube channel landing | ❌ (waiting on channel) | ❌ | ❌ | ❌ |
Integrations
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
| Spotify (OAuth + scheduled sync) | ✅ | 🟡 (read-only context) | ✅ (uses context for grounding) | ❌ |
| Email (Resend transactional) | ✅ | ✅ | — | — |
| Stripe subscription billing | ✅ | 🟡 (deep links to web) | — | — |
| Data import (Firebase / MongoDB) | ✅ (admin only) | — | — | — |
| Analytics (GA, FB Pixel) | ✅ | ❌ | — | — |
Admin & operations
| Feature | Web | Mobile | JQ Chat | Extension |
|---|
Admin panel (/dashboard/admin) | ✅ (super-admin) | ❌ | 🟡 (NL queries against product_tasks) | 🟡 (Quick Tasks routes to product_tasks) |
| Admin impersonation | ✅ | ❌ | — | — |
| Conversion-rate tracking | ✅ | — | — | — |
| Token tracking (per-user OpenAI cost) | ✅ | — | — | — |
| Authentication (Supabase Auth) | ✅ | ✅ | ✅ (inherited session) | ✅ (popup signs in via web) |
| Cron jobs (scheduled) | ✅ (Vercel Cron) | — | — | — |
Public & marketing pages
All marketing routes (/, /features, /compare, /about/jq, /jq-bridge, /jq-extension, /dreampro, /open-energy, /terms, /privacy) are Web only — mobile users follow deep links into the in-app browser; the chatbot and extension never render these.
Per-interface quick references
What only the Chrome Extension can do
- Reframe highlighted text on any web page (context-menu → side panel)
- Capture a Silver Lining for a selected paragraph
- One-shot Quick Tasks input that posts to
/api/user-tasks/nl-command (or /api/product-tasks/nl-command for super-admins)
What only the Web app can do (no parity elsewhere yet)
- Life Map (every viewpoint + drill-through drawer + node maintenance)
- DreamPro public community layer (Phases 1–8)
- Workout Window (full chain / battle / mosaic UI)
- Admin panel and impersonation
- Tone Pack uploads
- AI background image generation in the entry editor
What only JQ Chat can do (no UI elsewhere)
- Conversational task creation across both task tables, role-routed by signed-in user
- "Add all as tasks" from a Scan Recent Notes routine card
- Auto-runs of
weekly_review, spawn_recurring_tasks, scan_recent_notes, and rebuild_life_map on chat open (each gated by its own staleness threshold)
What Mobile is still catching up on
The prioritized, ongoing-maintained gap backlog lives in MOBILE_WEB_GAP.md (Tier 1/2/3 + re-audit cadence); the older narrative plan is REACT_NATIVE_FEATURE_PARITY_PLAN_2026.md. The largest missing chunks: voice entry capture, tasks UI, JQ chat, Life Map, the entire DreamPro public surface, JQ Routines management, and admin tooling.
Maintaining this doc
When you ship a feature, before calling it done:
- Add or update its row in docs/ai/INDEX.md (the master catalog).
- Add or update its row in this doc, marking each interface column.
- If the feature only exists on one surface, mention that fact under the per-interface quick references at the bottom.
If you change the interface model itself (a new surface — e.g., a Slack integration or a watchOS companion), add a column to every table above and to the legend at the top. Don't fork the doc.