All apps
TruthLens app icon

TruthLens

A multi-modal analysis app that turns behavioural signals into a readable report.

  • iOS
  • Android
  • 2026
  • My own product
In development In development

Screenshots

Click an image to enlarge it.

About the app

In everyday communication people give off a large number of behavioural signals without noticing: pauses, shifts in tone, word choices. TruthLens brings these together through multi-modal analysis and turns them into a readable report.

The positioning was a deliberate decision. There are plenty of apps on the market that claim to be a "lie detector"; I did not take that route, both because those claims are not scientifically sound and because they carry legal risk. TruthLens issues no verdict — it presents behavioural indicators, inconsistency signals and communication patterns, and every report comes with a notice that it is for entertainment and insight.

Technically, the part I spent the most time on was the baseline system. On first use the person answers 30–60 seconds of neutral questions and the system learns a behavioural profile specific to them. Later analyses are compared against that person's own baseline rather than generic averages. That distinction is what makes an app like this meaningful at all.

Camera and audio are processed at the same time and produce a single combined score. The report is timestamped: what happened at which moment is shown on an interactive bar.

Privacy decision: audio and video files are deleted automatically once the analysis finishes; only the report is kept.

Phase 0 (architecture, design system, localisation, navigation, onboarding flow and module scaffolds) is complete. I am currently working on the AI integration for the text analysis module.

Key features

  • Personal baseline: a behavioural profile from a 30–60 second neutral recording
  • Multi-modal scoring: camera and audio evaluated together
  • Timestamped report: an interactive bar showing what happened when
  • Inconsistency signals: indicators rather than a verdict
  • 9 languages: including Arabic, with right-to-left layout support
  • Automatic deletion: audio and video are removed after analysis, only the report remains
  • Disclaimer: every report states that it is for entertainment and insight

Technologies used

48 technologies · 9 categories

Languages and Platform

  • Dart 3.12
  • Flutter 3.44
  • One codebase, two platforms
  • iOS and Android targets
  • Custom theme on Material 3
  • Light and dark mode

Architecture and Navigation

  • Riverpod
  • go_router
  • Persistent bottom tabs via shell routes
  • Module-based folder structure
  • Separated service layer

Audio Processing

  • Audio recording and playback
  • Speech to text with OpenAI Whisper
  • Pause and pace extraction
  • Audio session management
  • Microphone permissions

Vision Processing

  • Apple Vision
  • Google ML Kit
  • Face detection
  • Micro-expression indicators
  • Camera stream management
  • Camera permissions

Analysis and Reporting

  • Anthropic Claude API
  • Personal baseline comparison
  • Multi-modal score fusion
  • Timestamped event sequence
  • Report text generation
  • Result validation and fallback

Backend

  • Firebase Authentication
  • Cloud Firestore
  • Firebase Storage
  • Cloud Functions
  • Security rules
  • Server-side authorisation checks

Privacy

  • Media deleted after analysis
  • Only the report is retained
  • Permission rationale copy
  • Account and data deletion flow
  • Data retention policy

Design and Localization

  • Space Grotesk and Inter typography
  • Design system tokens
  • 9 languages (TR, EN, AR, DE, ES, FR, IT, PT, RU)
  • Arabic right-to-left layout
  • Onboarding flow

Monetization

  • RevenueCat
  • Freemium subscription
  • A single integration for iOS and Android
  • Usage limits and premium entitlements
Solo work

Idea, design, UI, code, store release and post-launch maintenance — I ran the entire process end to end on my own. No team, no agency, no outsourcing.

Development notes

  • Languages and approachA single codebase with Flutter 3.44 and Dart 3.12. Navigation is go_router, state management is Riverpod.
  • Positioning decisionI make no "lie detector" claim. Claims like that are not scientifically sound and carry legal risk; the app offers behavioural indicators instead of a verdict and states its purpose clearly in every report.
  • The hard partThe baseline system. Comparing against generic averages produces meaningless results, so I build a neutral profile for each person and run the analysis against that.
  • Privacy decisionAudio and video are deleted automatically after analysis; only the report is stored. Not holding this kind of data is safer than holding it and trying to protect it.
  • StatusPhase 0 is complete: architecture, design system, localisation, navigation, onboarding flow and module scaffolds. I am currently working on the AI integration for the text analysis module.
  • Product ownershipThe idea, the positioning, the design and all of the code are mine.

Let's talk about TruthLens

I'm happy to walk you through the technical details, the problems I ran into and how I solved them.