Product evolution
How Leptir became this awareness layer
Milestones and principles—context before raw totals, one voice across Telegram and web, transparency as default.
Curated from what shipped; engineering scratchpads stay out of this view.
-
May 2026
Awareness convergence
Leptir moved from calorie-first nudges toward contextual human-state awareness. The next-move engine now weighs workload, recovery, meal spacing, and fueling pattern before surfacing intake detail.
- Day state heuristics (activity class, fueling band, protein posture) inform wording.
- High-output days no longer default to generic restriction language.
- Telegram /next and the web command center share the same awareness payload.
PrincipleTrust comes from context, not from sounding like a spreadsheet.
What changedUsers see guidance that acknowledges training and recovery, not only totals.
-
May 2026
LP2 shell propagation
The LP2 design language—atmospheric slate, shared tokens, restrained typography—extended beyond the landing page into auth, connect, manual, privacy, and system surfaces.
- Unified navigation and LP2 cards across public and logged-in shells.
- Authentication flows aligned to the same calm, minimal access pattern as marketing.
PrincipleOne product should feel like one environment, not a landing page bolted to admin tools.
What changedFirst-run and return visits share visual and tonal continuity.
-
May 2026
LP2 landing & themes
The marketing surface gained a token-driven design system: dark, slate, and soft-light themes with consistent elevation, borders, and hero atmosphere—without bolting on a second UI stack.
- Theme tokens centralize color, shadow, and surface language.
- Command-center mock and narrative emphasize interpretation over raw scores.
What changedLeptir presents as reflective infrastructure, not a generic fitness landing.
-
May 2026
Profile editing & local time integrity
Meal editing, re-analysis, and dashboard feeds tightened around the user’s timezone and honest timestamps—reducing “wrong day” drift between Telegram and web.
- PATCH-style edits and optional reanalysis keep the log aligned with intent.
- Feed and summaries respect profile-local dates for the same truths everywhere.
What changedThe timeline reads as a believable day, not a server-default artifact.
-
May 2026
Telegram trust layer
Meal receipts and follow-ups were simplified: minimal receipts, neutral /next copy, and fewer mixed signals between channels.
- Telegram stays the fast capture surface; the web stays the review surface.
- Nutrition scores align with final macro truth after reconciliation.
PrincipleIf the bot sounds robotic, people stop logging—clarity > verbosity.
What changedHigher confidence that what you see in chat matches what the dashboard remembers.
-
April 2026
Workouts as structured memory
Workouts gained a durable mirror layer—optional duration and structured metadata—so training could inform exports and downstream interpretation without losing raw logs.
- Workout rows attach to facts with additive metadata.
- JSON export can include workout context where present.
What changedMovement stops being free-text-only when you need structure downstream.
-
April 2026
One “today” everywhere
Daily nutrition totals for “next move,” dashboard cards, and summaries were unified around the same day boundary and timezone rules.
PrincipleSplit sources of truth quietly erode trust—one pipeline won this fight.
What changedTelegram and web no longer disagree on the same calendar day’s numbers.
-
April 2026
Data portability
Exports matured: domain-shaped CSV and JSON, clearer signed-in ZIP flows, and workout-aware joins where applicable—so ownership is practical, not theoretical.
- Meals, workouts, and weight could leave the system in useful shapes.
What changedUsers can audit and reuse their history outside Leptir.
-
April 2026
Product doctrine & transparency
Leptir documented its stance: user ownership of data, visible assumptions in interpretation, and copy on landing and early dashboard aligned with that doctrine.
PrincipleTransparency isn’t a feature flag—it’s the default posture.
-
April 2026
Macro truth & food lineage
Macro overrides, food DB linkage, and source propagation hardened the chain from ingestion → stored row → score—so numbers don’t float away from what was reviewed.
What changedInterpretation could be challenged without breaking the audit trail.
-
April 2026
Unified nutrition chart
The dashboard gained a coherent week-scale view of protein, carbs, fat, and calories—making pattern visible before narrative.
What changedMacro structure became glanceable across days, not only meal by meal.
-
April 2026
Manual as onboarding
The user manual moved from placeholder to a real first-run guide—Telegram prefixes, pairing, and where to look on the web.
What changedNew accounts had a single linkable answer to “how does this work?”
-
March 2026
Production-shaped runtime
The app split into explicit process types (web, bot, migrate), added health checks, stricter configuration, and rate limiting suited to a small but real deployment.
- Failures become visible early; migrations stop surprising app boot.
PrincipleReliability is part of trust—the service has to stay up to be honest.
-
March 2026
One voice across Telegram and web
Formatters and copy paths converged so Telegram and web didn’t present different stories for the same log; pattern hints found a consistent home.
What changedThe product felt like one system with two surfaces, not two products.
-
March 2026
MVP foundations: edit, weight, score
Meal editing landed, weight history and graphing stabilized, nutrition scoring integrated end-to-end, and export/help paths reached “shippable daily driver” quality.
What changedLeptir crossed from demo to something people could run as a primary logger.
-
February 2026
Web surface & accountable pairing
Public landing, user manual, password reset, Telegram re-pairing, and migrations aligned so signup → connect → log was a coherent journey.
- /connect and profile navigation converged on /me as home base.
What changedIdentity and device linking stopped feeling improvised.