بازگشت به فهرست ابزارها

سلامت و تندرستی

Cal AI

Point your phone at a plate of food and get a calorie and macro estimate logged to a daily total.

نتیجه ارزیابی

تا حدی

ایده اصلی یعنی ارسال عکس غذا به یک مدل چندوجهی و دریافت کالری و درشت‌مغذی‌ها به‌صورت JSON، کار یک بعدازظهر است و اتفاقا عالی کار می‌کند. جایی که کار سخت می‌شود جزئیات محصول است: یک اپلیکیشن بومی با سرعت اجرای بالا، دوربین آماده‌ای که کاربر روزی سه بار ترغیب به استفاده از آن شود، اسکن بارکد در پایگاه‌داده غذاهای بسته‌بندی‌شده، همگام‌سازی با HealthKit یا Google Fit و ثبت متوالی روزها (Streaks) برای حفظ عادت بعد از روز چهارم. دقت سیستم هم بیشتر به کالیبراسیون وابسته است تا پرامپت شما؛ تخمین اندازه سهم غذا نقطه‌ای است که این اپ‌ها در آن شکست می‌خورند یا موفق می‌شوند و شما هیچ دیتایی برای تصحیح خطاها ندارید. یک نسخه PWA محلی برای کسانی که حاضرند به جای آیکون اپ از بوکمارک مرورگر استفاده کنند عالی است، هرچند همچنان به API مدلی وابسته هستید که اجاره‌اش می‌کنید.

زمان تقریبی ساخت
یک نشست
هزینه تقریبی اجرا
نامشخص
اشتراک محصول اصلی
۹.۹۹ دلار در ماه

چه چیزی را از دست می‌دهی؟

  • اپلیکیشن نیتیو دارای ویجت، اعلان و اجرای کاملا آنی
  • اسکن بارکد بر پایه پایگاه‌داده به‌روز از خوراکی‌های بسته‌بندی‌شده
  • همگام‌سازی با HealthKit ،Google Fit و اپل‌واچ
  • ثبت روزهای متوالی (Streaks)، پیام‌های انگیزشی و چارچوب‌های تثبیت عادت
  • دقت در تخمین اندازه سهم غذا که از میلیون‌ها تصحیح دستی کاربران حاصل شده است

پرامپت شروع

برای شروع ساخت، مستقیم کپی‌اش کن.

Build a self-hosted photo calorie logger as a mobile-first PWA. No accounts, no cloud, no telemetry, single user. Stack, no substitutions: - Next.js 15 App Router, TypeScript, Tailwind. Server actions and route handlers only, no separate API service. - SQLite via better-sqlite3, file at ./data/food.db, schema created on boot if missing. - OpenAI-compatible chat completions with image input for the estimate. Read OPENAI_API_KEY and MODEL from .env. Commit a .env.example, never a real key. Core loop: 1. Home screen shows today: total kcal, protein, carbs, fat, plus a list of logged entries with thumbnails and a delete button on each. 2. A big camera button uses an input type="file" with accept="image/*" and capture="environment". Resize client side to max 1024px on the long edge, JPEG quality 0.8, before upload. 3. Server action stores the image under ./data/uploads, then sends it to the model with a strict instruction: identify each distinct food item, estimate portion in grams, return JSON only matching { items: [{ name, grams, kcal, protein_g, carbs_g, fat_g, confidence }], notes }. Use JSON response format and validate with zod. On parse failure, retry once, then surface an error, do not fake numbers. 4. Show a confirmation screen listing detected items with editable grams. Editing grams rescales that item's macros linearly. Save writes one row per item plus a parent meal row. 5. Manual entry form as a fallback: name, grams, kcal, macros. No barcode scanning, no external food database. Also include: - A daily kcal and protein target stored in a settings table, shown as progress bars. - A /history page: last 30 days, one row per day with totals, and a tiny inline bar chart drawn with divs, no chart library. - Export button that dumps all entries as CSV. - PWA manifest and an icon so it can be added to a phone home screen. Offline is out of scope, say so in the README. Explicitly out of scope: auth, multi-user, HealthKit or Google Fit sync, push notifications, streaks, recipes, native apps. Deliver a README with setup, .env vars, how to run on a LAN so the phone can reach it, and one blunt paragraph noting that portion estimates from a photo are rough and the edit-grams step is not optional if you care about the numbers.

برای ساختش کمک می‌خوای؟

به درد یکی دیگه هم می‌خوره؟

نتیجه Cal AI رو براش بفرست