HeartPrint® v1.0 — Developer_notes
HeartPrint ® Journeyist ® Journeyism ® HeartPrint Media ®
User Features
In version 1.0, you are able to:
Authentication
- Create an account with email and password
- Sign in and sign out securely
- Sessions persist for 7 days
HeartPrint® File (Timeline)
- View all your captured moments in a timeline
- Filter entries by modality (text, photo, video, audio)
- Filter by HeartTags, date range, or search keywords
- See emotion analysis and AI-generated summaries for each entry
Capture Moments
- Create entries in multiple modalities: text, photo, video, or audio
- Add titles, descriptions, and captions
- Set privacy visibility (private, shared, public)
- Add location metadata
- Attach multiple media files to a single entry
Journeyist® AI Chatbot
- Start conversations with an empathetic AI story companion
- Experience trauma-informed, warm conversational flow
- AI mirrors back what you share before asking gentle questions
- One question at a time — never overwhelming
- Choose from 6 conversation starters
- Get HeartTag suggestions for your stories
- Save drafts directly to DocuStory
- Persistent chat history with rename/delete options
DocuStory (Chapter Management)
- Save AI-generated story chapters
- Create, edit, and delete chapters manually
- Organize chapters with parts (e.g., “Part I: Early Years”)
- Reorder chapters via drag-and-drop
- Attach media and captions to chapters
- Track source conversations for each chapter
Heartifacts™ (Creative Outputs)
- Transform entries into visual artifacts
- Available templates: Vision Board, Resilience Timeline, Memory Atlas, and more
- Track generation status (pending, processing, complete)
- Download rendered outputs (PDF, image)
Reflect (AI Insights)
- Request personalized AI-generated insights
- Options: guided meditations, quotes, resources, pattern analysis
- Insights based on your journal entries and goals
- Pull-based — only when you request it
Evolution (Emotional Analytics)
- Visualize your emotional journey over time
- See emotion trends and top themes
- Track patterns in your HeartTags
- Suggestions for growth and “leveling up”
Design & Experience
- Light and dark mode support
- Mobile-first responsive design
- HeartPrint brand aesthetic: burgundy (#972529), warm cream (#F5F3EC), taupe (#C1BCAD)
- Sanctuary-first design philosophy
Technical Stack
Frontend
- Framework: React 18 with TypeScript
- Build Tool: Vite
- Styling: Tailwind CSS with custom HSL color tokens
- UI Components: shadcn/ui built on Radix UI primitives
- State Management: TanStack Query v5 for server state
- Routing: Wouter
- Icons: Lucide React, React Icons
- Animations: Framer Motion
- Forms: React Hook Form with Zod validation
Backend
- Runtime: Node.js with Express.js
- Language: TypeScript (ESM modules)
- Authentication: Passport.js Local Strategy with Bcrypt (10 salt rounds)
- Session Storage: PostgreSQL via connect-pg-simple (7-day TTL)
- File Uploads: Multer for multipart handling
- AI Integration: OpenAI GPT-4o-mini
Database
- Provider: Neon PostgreSQL (serverless)
- ORM: Drizzle ORM with drizzle-zod for schema validation
Tables
- users — User accounts with email/password
- sessions — Express session storage
- entries — Multi-modal journal entries
- heartifacts — Generated creative outputs
- heartifact_sources — Many-to-many link between entries and heartifacts
- insight_requests — AI reflection requests
- journeyist_conversations — Chat session management
- journeyist_messages — Individual chat messages
- chapters — DocuStory chapter storage