← Back to Projects
Web App · AI Companion · HCI Project April 2025

LifeLens — AI Journaling Companion

LifeLens is an intelligent journaling companion that transforms text-entry into an interactive experience. It leverages AI for sentiment analysis, automated formatting, and voice-to-text to enhance self-reflection.

Sentiment
Mood Analysis AI
Voice
To-Text Journaling
Insights
Visual Dashboard
AI Format
Auto-Structuring
Timeline
April 2025 (HCI Course)
Role
Lead Full-Stack Developer
Team Size
Independent Project
Status
Functional MVP

// Overview

An AI Companion for reflection

LifeLens is an intelligent journaling application I developed for my Human-Computer Interaction course at Thompson Rivers University in April 2025. It transforms journaling from a simple text-entry task into an insightful, interactive experience centered on reflection, emotional awareness, and long-term pattern recognition.

The goal was to create an AI-powered companion that helps users capture thoughts, track emotions, visualize progress, and gain deeper self-awareness with less friction through quick entry flows, multiple input methods, and immediate feedback.

Core Objectives:

  • Create an intuitive and engaging user interface (HCI focus)
  • Integrate AI for enhanced functionality (formatting, analysis, input)
  • Provide meaningful data visualizations for self-reflection
  • Streamline the journaling process with quick entry and multiple input methods

↑ Walkthrough of the LifeLens intelligent interface

01

Engagement

Creating an intuitive, non-intimidating interface that lowers the friction of daily logging.

02

Analysis

Integrating AI for formatting, analysis, reflection prompts, and flexible input.

03

Clarity

Visualizing mood, energy, productivity, and creativity trends through long-term heatmaps.

04

Flow

Streamlining journaling with quick entry, markdown support, OCR, and voice capture.

// Visualization

Visualizing the Self

// Dashboard

Personalized Hub

The central dashboard welcomes the user with a one-click Quick Journal Entry flow and an immediate overview of their journaling journey. Heatmaps for Mood, Energy, Productivity, and Creativity use color intensity to surface trends that would be hard to notice in raw entries alone.

It also keeps the experience grounded in daily use through four key components: recent journal entries for quick access, favorites for pinned reflections, badge-based milestones such as "Consistency Champion" or "Gratitude Guru," and the heatmap grid that lets users spot long-term patterns at a glance.

Dashboard
// Insights

Temporal Insights

An in-depth Insights page extends the dashboard into a full-year reflection layer, helping users explore how different well-being metrics correlate over time.

The heatmap approach was a deliberate HCI decision: it represents temporal density across days and months in a format that is visually compact, easy to scan, and cognitively lighter than dense charts or tables.

Insights

// Interaction Design

Seamless Capturing

// History

Organized History

A clean, chronological repository of thoughts makes it easy to revisit full entries alongside the emotional and cognitive metrics — Happiness, Creativity, Energy — captured at the time of writing. Users can review entry details, edit older reflections with corrections or additions, and mark meaningful moments as favorites for quick retrieval from the dashboard.

Journal List
// Writing

Distraction-Free Writing

Creating a new entry opens a focused writing canvas where users can set a title, date, and mood rating without getting lost in secondary UI. That restraint was intentional: the product needed to support reflection first, then analysis. If a title feels unnecessary mid-thought, it can be left blank and AI will generate a fitting one after the entry is saved.

Writing Interface
// Markdown

Markdown Editor

The editor supports headings, lists, bold, italics, and other standard Markdown syntax. Users can toggle instantly between Write and Preview modes to see their formatted output without leaving the journaling flow. A built-in syntax guide is always one tap away for users who are new to Markdown.

Markdown Preview

// Intelligence

AI-Powered Flow

// Analysis

Sentiment Analysis

After saving an entry, an LLM-based AI agent analyzes the text and returns quantitative scores across emotional dimensions — Happiness, Energy, Mindfulness, Stress, and Productivity — derived from sentiment and keyword patterns. Alongside the scores, users receive personalized textual feedback and targeted reflection prompts to surface what changed and why.

If no title was provided, the model generates a contextually relevant one, keeping the writing flow uninterrupted while still producing a well-labeled entry.

AI Analysis
// Formatting

AI Formatting Tool

When users want to capture thoughts quickly, LifeLens can transform rough, unstructured text into a clean Markdown document with headings, bullet points, and emphasis — all with a single click. The AI adds structure based on the content's natural shape, saving time while preserving the user's original meaning and voice.

AI Formatting
// OCR

Hybrid Journaling (OCR)

Bridging the physical and digital gap, LifeLens lets users point a camera at a handwritten journal page and extract the text directly into the editor via Optical Character Recognition powered by a local Llama vision model. The feature preserves the familiarity of paper journaling while keeping every entry searchable, editable, and analyzable.

OCR Feature
// Voice

Voice Input (Speech-to-Text)

For moments when writing feels too slow or inconvenient, voice-to-text offers a faster capture path. The feature transcribes spoken words into text directly within the journal entry editor via the browser's native Speech Recognition API, requiring no external service or additional setup.

Supporting multiple input modes — typed text, handwriting via OCR, and voice — was essential to making journaling feel natural rather than burdensome, and to accommodating different user preferences and contexts.

Voice Input Workflow

// Engineering

System Foundation

LifeLens was built with modern web technologies and user-centered design principles applied throughout the HCI course. The real engineering focus was interaction design: making journaling feel approachable, keeping visualizations legible, and ensuring that common actions — saving, previewing, and AI-assisted processing — felt immediate and reliable.

The AI layer runs on locally hosted Llama models, handling both vision tasks (OCR) and language tasks (formatting, analysis, title generation) without sending user data to external services. LLM-based agents coordinate the analysis pipeline, while the Speech Recognition API handles voice-to-text transcription natively in the browser.

React & TS
Type-Safe Frontend
Llama Models
Local AI Tasks
Tailwind CSS
Utility-First Styling
Chart.js
Heatmap Rendering
Speech API
Voice Input
Markdown
Rich Text
01

User-Centric

Designed to feel calm and supportive rather than overly technical.

02

Readable Data

Visualizations were tuned for clarity before density.

03

Efficient Tasks

Quick entry, editing, previewing, and AI support had to stay low-friction.

04

Immediate Feedback

Every action needed clear system response, especially around AI processing.

// Retrospective

Design Takeaways

LifeLens taught me the importance of feedback loops in software. By providing immediate visual and textual feedback through AI analysis, we not only captured data but also gave users the mental model needed for deeper self-reflection. Translating complex temporal data into digestible heatmaps remains the project's most significant UX achievement.

Multi-Modal Input

Integrating OCR, speech-to-text, and text capture while keeping the interface responsive and resilient to model imperfections.

Temporal Visualization

Designing yearly heatmaps that were performant, informative, and cognitively light to read at a glance.

Theory to Practice

Translating HCI principles—usability, cognitive load, feedback loops—into concrete UI and interaction decisions.

State Management

Managing async React state across concurrent AI operations and real-time visualizations without race conditions.

HCI Principles

Learning when interaction quality matters as much as functional correctness in user-facing software.

AI Integration

Weaving multiple AI/ML capabilities—formatting, analysis, OCR, voice—into a cohesive, seamless user experience.

Data as Reflection

Representing personal temporal data visually in ways that invite reflection rather than overwhelm the user.

Iterative Design

Defensive edge-case handling and iterative refinement, especially with non-deterministic AI outputs.

Want to see more?

Check out my other projects or get in touch to discuss a collaboration.