← back

active · 2026-01 → present

Mera

AI calorie tracking app for the Russian market. Three input modes — text, computer vision, and a context-aware advisor — share a single FastAPI backend.

Co-founder & Backend Engineer
Mera product marketing shot — three iPhones showing the daily diary, a meal detail with macros, and a weight-progress analytics screen

Project highlights

  • Co-founded; I own the backend and the platform plumbing end to end.
  • Four surfaces in one product: iOS, Android, backend, web.
  • Three input modes — text, computer vision on a meal photo, and a context-aware advisor — all writing the same nutrition state.
  • Payments live on both sides of the iOS divide: Apple Pay for in-app, YooKassa for the web subscription path.
  • Currently active and live in the Russian market.

What I built

  • FastAPI backend — auth, food/log/meal data, vision and advisor pipelines, subscription & entitlement state.
  • PostgreSQL + Alembic for nutrition data and migrations.
  • Celery + Redis for the bursty work: vision inference and advisor turn chains.
  • Docker + CI/CD so deploys are not a ceremony.
  • Payment integrations — Apple Pay (StoreKit receipts → entitlement) and YooKassa for the web path.
  • Web app at app-mera.ru for subscription management.

The product

People log food differently. Some want to type “two eggs and toast” and move on. Some want to point a camera at their plate. Some want a back-and-forth with a nutritionist. Mera supports all three, and the whole point is that they converge on the same nutrition record — calories, macros, portion size, timestamp, photo — regardless of which mode the user picked.

Today the app sits live on iOS, Android, and the web, with a paid Pro tier that unlocks daily quotas across each input mode. The free tier is enough to use the app casually; the Pro tier is for people building a daily logging habit.

Mera meal detail screen — a stuffed bagel logged at 13:31 with 500 kcal, 15g protein, 60g carbs, 20g fat, 200g portion, AI commentary, and a free-text correction box
meal detail — vision + AI advisor on one screen

Three inputs, one nutrition state

The interesting bit isn’t any single mode — it’s the convergence. Logging a meal as text, recognising it from a photo, and discussing it with the advisor all read and write the same rows. Holding that consistent under three very different latency profiles is most of the work.

Text is synchronous: parse the user’s string, normalise against the food database, write the log entry, return. Vision is a Celery job: the photo passes through a vision model, returns a proposed meal with macros, and the user confirms or edits before commit. Advisor is a multi-turn agent with the user’s diary and goals in context, so when it suggests “swap the bagel for an open-faced toast,” the suggestion is grounded in what the user actually ate this week, not in generic nutrition advice.

The screen on the left shows all three converging in one place: a vision-derived meal, AI advisor commentary inline, and a free-text correction box at the bottom that re-runs the macro estimate against whatever the user typed. One record in the database, regardless of which input wrote which field.

Web platform & subscriptions

The web app at app-mera.ru handles the subscription side of the product — sign-in, plan selection, billing history, account settings. Pro runs 299 ₽/month or 2 490 ₽/year (a 31% annual discount), and unlocks 30 photo logs, 30 text logs, and 30 advisor messages per day.

Payments split cleanly along the platform divide. iOS uses Apple Pay via StoreKit; the receipt round-trips through the backend to set entitlement on the server, so the user’s Pro state is consistent across devices. The web path runs on YooKassa, the Sber/MOEX-aligned Russian payment processor, for ruble card payments. Both flows write into the same entitlement table, and the mobile clients read entitlement from the backend rather than from local receipts — one source of truth.

Mera web app pricing page at app-mera.ru — Pro Monthly at 299₽ and Pro Yearly at 2490₽, each with 30 photo, 30 text, and 30 advisor messages per day
app-mera.ru — pricing tiers and per-day quotas

Shipping in Russia

Honest answer: the development was hard, and the legal & setup work was comparable in weight. Shipping a paid consumer product in Russia means everything ships twice — once as code, once as paperwork. Personal-data handling under 152-ФЗ, consumer-agreement language for the subscription tiers, the merchant agreement with YooKassa and the Apple Pay merchant setup, an actual legal entity to receive payments through, terms of service and privacy policies tuned to the local regulator’s preferred phrasing — all of that is on the critical path before a single ruble moves.

None of it is technically interesting in isolation. All of it is required, and none of it can be skipped or batched. Doing this work for a small founding team, in parallel with the actual engineering, is most of what makes a Russian-market consumer app harder to ship than the equivalent product elsewhere.

Status

Active. Mera is live in the Russian market and growing. Day-to-day work right now is split across the three input pipelines, observability for the Celery/vision path, and gradual tightening of the subscription & entitlement layer as we learn more from real-paying users.