Back to case studies Business Analysis · AI Product Case Study

Mind Print

A privacy-sensitive mental-wellness application that combines journaling, mood tracking, voice capture, AI-assisted emotional insights, CBT reframes, and personal reporting in one cross-platform experience.

Product DiscoveryAI RequirementsPrivacyOffline FirstUser StoriesTech Stack

01Business Problem & Objectives

People often record moods, journal entries, and wellness activities across disconnected tools. The information remains difficult to interpret over time, while generic insights and unclear privacy controls reduce trust. Mind Print brings capture, analysis, reflection, and reporting into a single user-controlled journey.

  • Objective 1: Make text and voice journaling simple enough for regular use.
  • Objective 2: Turn entries into understandable emotion, sentiment, and thought-pattern insights.
  • Objective 3: Preserve continuity during poor connectivity through offline-first behaviour.
  • Objective 4: Give users transparent control over authentication, export, analytics consent, and deletion.

02User Journey & Decision Rules

Primary journey: User records a text or voice journal → app saves the entry locally → voice is transcribed when required → AI analyses sentiment, emotions, and possible cognitive distortions → app presents a reflection and CBT-style reframe → results contribute to trends and reports.

Key rules: AI output is supportive insight rather than a diagnosis; original entries remain linked to their analysis; failed AI requests preserve the journal; a fallback classification service can provide reduced analysis; users can export or delete their data.

03Functional Requirements

  • FR1: Users can create, edit, and review text or voice journal entries.
  • FR2: The system analyses entries for sentiment, primary and secondary emotions, and possible cognitive distortions.
  • FR3: The system can generate a CBT-style reframe while clearly avoiding diagnostic claims.
  • FR4: Users can record mood check-ins and review changes over time.
  • FR5: Journal data is cached locally and synchronised with cloud records when connectivity returns.
  • FR6: Users can authenticate securely, enable biometric access, export reports, opt out of analytics, or request account deletion.

04Non-Functional Requirements

CategoryRequirement
PrivacyJournal content is protected by access rules and never exposed to another user.
ResilienceNew entries remain available locally when the network or AI provider is unavailable.
PerformanceCached journal history appears immediately while cloud synchronisation continues in the background.
TransparencyUsers are told when analysis is AI-generated or when a fallback result is used.
Abuse preventionAnalysis and transcription requests are rate-limited without blocking normal use.

05User Story & Acceptance Criteria

As a user, I want my journal saved before AI analysis starts, so that I never lose a private reflection because of a network or provider failure.

  • Given a valid entry, when the user saves it, then it is written to local storage before any remote analysis request.
  • Given the device is offline, when the entry is saved, then it remains readable and is marked for later synchronisation.
  • Given AI analysis fails, when the user reopens the entry, then the original content remains intact and retry status is clear.

06Use Case: Analyse a Journal Entry

ActorAuthenticated user
PreconditionThe user has entered journal text or completed a voice transcription.
Main flow1. Save entry locally. 2. Synchronise the entry. 3. Send permitted content for analysis. 4. Receive emotions, sentiment, and reflection. 5. Save results against the entry. 6. Display the insight.
Alternate flowIf the primary AI service fails, use the fallback classifier or present a retry option without losing the entry.
PostconditionThe journal is retained and any available analysis is traceable to that entry.

Explore the implementation

Review the application code and technical documentation on GitHub.

View repository