Micro-Deck

Bridging the Intention-Behavior Gap

A Minimalist Habit Initiation Tool

Team HabitHelp

[Team Member Names]

BYU IS/IT Capstone - AI-Augmented Software Development
February 2026

It's 7 AM. You want to run.
Your phone is in your hand.

"Most habit failures don't happen because people lack motivation - they happen in the 30 seconds between wanting to do something and starting it."

The Intention-Behavior Gap

  • Trackers measure after you've acted
  • Blockers police your behavior (restrictive, easy to bypass)
  • Focus timers require you to already be in motion

Nobody owns the initiation moment.

The Habit Formation Ecosystem

📊 [SYSTEM DIAGRAM HERE]

The Human Habit Formation System

Create diagram showing: Inputs → Core Loop → Leverage Point → Outputs

Components:

  • Inputs: Motivation, Environment, Triggers
  • Core Loop: Cue → Craving → Action → Reward
  • Leverage Point: Initiation Gap
  • Outputs: Automatic behavior OR fades

Our Target:

30 sec The window between intention and action

Who Are We Serving?

People with ADHD/
Executive Dysfunction

15.5M diagnosed U.S. adults (CDC)

Struggle with task initiation despite knowing what to do

Harmed by streak-based guilt mechanics

Digital Burnout
Sufferers

Recognize their phone as a distraction trap

Actively seeking alternatives to doomscrolling

Skeptical of engagement tactics

Productivity
Minimalists

Tried complex systems (Notion, routine apps)

Maintenance overhead defeats the purpose

Want one tool that does one thing well

"It's difficult for neurodivergent people to build habits... they have to think hard about each step, which is why people like that use apps and reminders"
— UX Research User #1 (ADHD)

Customer Research Evidence

Research Process

  • 5 in-depth customer interviews
  • Mix of ADHD/neurodivergent individuals and typical users
  • Tested paper mockups and gathered feedback

Common Themes

4/5 users

"Starting is harder than continuing"

3/5 users

"Existing apps add complexity instead of reducing it"

2/5 users

"Streak-based systems create guilt, not motivation"

5/5 users

"Phone is both the problem and the solution"

"I like how it has you do it right when you do it... I like how you have to set an action to get started... super simple to navigate"
— User #3 on our demo

Falsifiability - How We Could Be Wrong

Our Hypothesis

"A minimalist, offline, 2-minute initiation tool will help people with executive dysfunction start habits they currently avoid."

How We Could Fail

  • People don't see what's different (use notes/calendar instead)
  • Internal motivation isn't enough to open the app
  • Phone isn't available to be "passive timer"
  • 2 minutes is too long or too short
  • Follow-up doesn't create lasting habits

Tests We've Run

  • Showed 2-3 sentence description + mockup to 5 potential users
  • Asked: "Would this help more than your current method?"
  • Result: 3/5 said yes with specific enthusiasm; 2/5 needed more convincing
  • Next: Behavioral test with working prototype

Competitive Differentiation

📊 [2x2 DIFFERENTIATION GRID HERE]

X-axis: Moment of Intervention (Before Action ← → After Action)
Y-axis: Approach (Restrictive/Punitive ← → Supportive/Enabling)

Create grid in Figma/Lucidchart showing competitors mapped to quadrants

Competitors:

  • Habit trackers (Streaks, Habitify) - guilt-based, after action
  • App blockers (Opal, Freedom, One Sec) - restrictive, police behavior
  • Focus timers (Forest, Tiimo) - requires already in motion

Micro-Deck's White Space:

Supportive + Before Action
Enables starting, not restricting or measuring

Our Differentiation: No history, no tracking, no guilt. 2-minute sessions, not 25-minute Pomodoros.

The Solution - What Makes Us Different

"One card. Two minutes. No judgment."

The Core Loop

  1. User creates a "deck" of cards - each card = one 2-minute micro-habit
  2. Card shows the smallest possible starting action (e.g., "Put on running shoes")
  3. User taps card → full-screen timer → phone face-down → distraction-free
  4. Haptic pulse signals completion (no confetti, no streaks)
  5. Card returns to deck, ready for next time

What Makes This Different

  • Offline-only - no account, no cloud, no data collection
  • No tracking - no history, no streaks, no guilt
  • 2 minutes max - just enough to start, not commit to full session
  • Silent Pulse - haptic feedback, not visual reward
  • Compassionate design - "rest" cards, don't "fail" at them

Success Metrics & Failure Indicators

Success Looks Like

  • ≥60% of installs complete 1 card in first session
  • ≥25% return on Day 7 (without streaks!)
  • ≥40% grant notification permission
  • ≥80% of started timers finish
  • Qualitative: Users say "this feels different"

Failure Looks Like

  • Users abandon during onboarding (too complex)
  • Session abandon rate >20% (timer UX broken)
  • Don't return without push notifications
  • Feedback: "This is just a timer" (positioning failed)

Our Pivot Plan

  • If initiation works but retention fails: Add gentle follow-up mechanisms (not streaks)
  • If users need more guidance: Add AI-assisted card creation (future state)
  • If 2 minutes is wrong: Test 1-minute and 5-minute defaults

Technical Approach

Document-Driven AI Development

Document-Driven Development

Our Process: PRD → Plan → Build → Iterate

Documents as Source of Truth

  • PRD (aiDocs/prd.md) - 19KB, comprehensive
  • Architecture (aiDocs/architecture.md) - Tech stack, constraints
  • MVP Scope (aiDocs/mvp.md) - Definition of done
  • Context (aiDocs/context.md) - Current focus

AI-Augmented Workflow

  • All docs live in /aiDocs folder
  • PRD drives all implementation decisions
  • Documents updated as project evolves
  • AI reads PRD → generates plans → follows constraints

Evidence of Process

  • PRD v1.0 created before any code
  • Architecture defines hard constraints (no network, no accounts, no telemetry)
  • MVP scope prevents feature creep
  • All docs verified and updated February 2026

AI Development Infrastructure

AI Folder Pattern - Properly Implemented

Structure:

/aiDocs/
  ├── prd.md
  ├── architecture.md
  ├── mvp.md
  ├── context.md
  └── midterminfo.md

/ai/guides/
  └── habit-help-market-research.md
                        

Git Workflow:

  • Meaningful commits: "Updates to Phase 3", "Updated architecture, context, prd"
  • Clean history showing iterative progress
  • .gitignore properly configured (no secrets)

Tech Stack:

  • Flutter 3.22+ (iOS primary)
  • Riverpod state management
  • SQLite local storage
  • iOS 16+, Android API 26+

Phase-by-Phase Implementation

Incremental Build Evidence

Phase 1: Foundation ✓

  • Flutter project scaffold
  • Database setup (sqflite)
  • Data models (Card, Schedule)
  • Repositories (CRUD)
  • 91 files changed

Phase 2: Core Screens ✓

  • Welcome screen
  • Onboarding flow (Goal → Action → Confirm)
  • Timer screen with wakelock
  • Deck view with card list

Phase 3: Features ⚙

  • Notification service ✓
  • Purchase service ✓
  • Settings screen ✓
  • Card templates ✓
  • Final integrations 🔄
4,593 lines of code added in latest implementation

Git History Shows: Iterative commits, not one-shot generation. Multi-session workflow. Progressive feature additions.

Structured Logging & Debugging

Test-Log-Fix Loop

Current Implementation

  • Flutter's built-in error handling
  • Local logging for debugging
  • No telemetry sent off-device
  • flutter_01.log and flutter_02.log files present

Debugging Process

  • AI reads error logs from Flutter console
  • Diagnoses issues based on stack traces
  • Fixes applied incrementally
  • Re-test after each fix
⚠ Identified Gap: We need better CLI test scripts - that's a clear area for improvement before final.

Privacy by Design: No analytics SDK, no crash reporting SDK that phones home. Architecture specifies: "Use Flutter's built-in error handling with local logging only"

Live Demo

📱 [LIVE DEMO OR SCREEN RECORDING HERE]

Physical device or backup screen recording

Demo Flow - The Complete Loop

  1. Cold Launch → Welcome screen appears
  2. Onboarding Step 1: "What do you want to work toward?" → Type: "Exercise more"
  3. Onboarding Step 2: "What's one tiny thing that starts it?" → Type: "Put on running shoes"
  4. Confirmation: "Let's do two minutes right now" → [Start now]
  5. Timer Screen: Full-screen countdown, pulsing dot, silent focus
  6. Completion: Haptic pulse fires, "That's it. You started."
  7. Deck View: Card appears, tap to repeat timer
  8. Add Card: Show [+] button, create second card

Key Message: No streak. No score. No guilt. Just help you start.

Current State & Next Steps

✓ Completed (MVP)

  • PRD, Architecture, MVP docs
  • 6 core screens implemented
  • Local persistence (SQLite)
  • Timer with haptic feedback
  • Onboarding flow
  • Deck view with card management
  • Notification service (foundation)
  • Purchase service (foundation)

⚙ In Progress (Phase 3)

  • Final notification scheduling integration
  • Pro tier paywall implementation
  • Settings screen polish
  • Card templates finalization

📋 Next Steps (Post-Midterm)

  • Complete Phase 3 features
  • Build CLI test scripts (address gap)
  • Conduct behavioral testing with 10+ users
  • Measure activation and retention metrics
  • iOS TestFlight beta launch
  • Iterate based on real user data

Questions & Discussion

All team members ready to answer questions about:

  • Technical implementation details
  • Customer research methodology
  • Competitive positioning
  • Success metrics and validation plans
  • Process and documentation approach

Backup A: Detailed Market Research

Market Size

15.5M Diagnosed ADHD adults in U.S. (CDC)
Growing digital burnout segment (attention-economy backlash)

Full Competitive Landscape (7 Clusters)

Competitor Price Category Why Users Leave
Opal $19.99/mo App blocker Unreliable blocking, cluttered UI
Freedom $99.50 lifetime App blocker Bypass workarounds, support friction
one sec $2.99/mo Friction tool Setup friction, annoying by design
Forest Paid Focus timer Gamification fatigue, feature bloat
Tiimo/Routinery Various Routine planner "Too much system upkeep"
Streaks/Habitify Various Habit tracker Streak guilt, shame on bad days

Identified Risks

  • Retention without streaks
  • Onboarding friction (need to get to first win quickly)
  • iOS notification limits (64-notification queue workaround)
  • Monetization (one-time purchase vs. subscription)

Backup B: Behavioral Science Foundation

Principle Research Basis How Micro-Deck Applies It
Implementation Intentions Gollwitzer (1999) - "if-then" planning improves follow-through Card scheduling ("When it's 7am Monday, I will put on running shoes")
Minimum Viable Behavior BJ Fogg's Tiny Habits - anchor to smallest possible version 2-minute default timer; short enough brain can't argue
Autonomy Support Self-Determination Theory - user-authored goals reduce reactance User creates all cards; app never assigns tasks
Contextual Cueing Habit loop research (Clear, Wood) - environmental cues drive initiation Scheduled notifications tied to specific cards and times
Completion Signaling Operant conditioning - clear, immediate feedback reinforces behavior Haptic pulse on timer completion

Design Principle: This research is embedded in the experience - not marketed as a feature claim.

Backup C: Data Models & Architecture

Core Data Models (SQLite)

Goal
  id: UUID
  label: String
  createdAt: DateTime

Card
  id: UUID
  goalId: UUID (nullable - card can exist without goal)
  actionLabel: String
  durationSeconds: Int (default: 120)
  sortOrder: Int
  isArchived: Bool
  createdAt: DateTime

Schedule (Pro)
  id: UUID
  cardId: UUID
  weekdays: [Int] (0=Sun ... 6=Sat)
  timeOfDay: TimeOfDay
  isRecurring: Bool
  isActive: Bool

Session
  id: UUID
  cardId: UUID
  startedAt: DateTime
  completedAt: DateTime (nullable - null = abandoned)
  durationSeconds: Int
                

iOS 64-Notification Limit Workaround

  1. All schedules stored in Schedule table
  2. On every app open: cancel all pending notifications, compute next 40 upcoming instances, register those
  3. On schedule create/edit/delete: trigger immediate recompute
  4. If notifications denied: schedules remain stored, app remains fully functional

Offline-First: No backend. No user account. No telemetry. Zero network requests in v1.

Backup D: Full UX Research Data

5 Customer Interviews - Key Insights

User #1 (18-24, ADHD)

"There's just always so many tasks... never ending checklist, then get distracted... will start one task, then get distracted partway through and start another"

"Liked that it splits stuff into smaller tasks... curious if it add extra unnecessary steps"

Sister insight: "If her phone is telling her to do stuff she magically ends up on Instagram. She liked that our app was black and white (less distracting)"

User #2 (Existing habit tracker user)

Uses habitShare for end-of-day tracking. Challenge: Wouldn't switch unless we're different.

This feedback made us double down on initiation focus, not tracking.

User #3 (Marketing student)

"I want my goals to change into a habit... It has to be an alarm but I fall back into my routine"

"I like how it has you do it right when you do it... super simple to navigate"

User #4

Main challenge: "Setting achievable goals. Too many goals at once"

Validates our focus on minimal cards, not overwhelming lists.

User #5 (Social accountability seeker)

Uses friends for accountability. Wants "active accountability" and "celebrating wins with other people"

Future consideration: Optional social features, but not in v1 (contradicts privacy-first philosophy)