smooth-app
전 세계 식품의 성분·영양·정보를 자유롭게 협업하고 공개하는 데이터베이스
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Personal fitness, gym, Indian nutrition, body transformation, sleep and recovery tracker
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
A personal fitness, nutrition, sleep and body-transformation tracker. Training with real
progression, Indian food logging in katoris and rotis, sleep and recovery, and analytics built
from what you actually logged.
Next.js (App Router) + Convex + Tailwind v4.
dev:convex uses Convex's anonymous local backend (no account needed) and writes
NEXT_PUBLIC_CONVEX_URL into .env.local on first run. To use a hosted Convex project instead,
run npx convex login && npx convex dev.
Auth needs three deployment env vars. Generate them once:README 전문 보기 ↗A personal fitness, nutrition, sleep and body-transformation tracker. Training with real progression, Indian food logging in katoris and rotis, sleep and recovery, and analytics built from what you actually logged.
Next.js (App Router) + Convex + Tailwind v4.
npm install
Two processes, two terminals:
npm run dev:convex
npm run dev
dev:convex uses Convex's anonymous local backend (no account needed) and writes
NEXT_PUBLIC_CONVEX_URL into .env.local on first run. To use a hosted Convex project instead,
run npx convex login && npx convex dev.
Auth needs three deployment env vars. Generate them once:
npx @convex-dev/auth
or set them by hand with npx convex env set JWT_PRIVATE_KEY …, JWKS, and
SITE_URL=http://localhost:3000.
The shared exercise and food libraries seed themselves on first sign-in; npm run seed forces it.
npm run check # asserts the nutrition/strength math and the seed data
Vercel builds the frontend from main; the Convex backend is deployed separately. Ship the
backend first so the new frontend never calls a function production doesn't have yet:
npx convex deploy
git push origin main
Onboarding collects only what changes the maths — age, height, weight, goal, experience, activity, schedule, equipment, diet, sleep window — and every step is skippable. It ends by showing the calorie and macro estimate it derived, labelled as an estimate, before anything is saved.
Training. A generator turns the profile into a 2–6 day split from a 105-exercise library, picking movements that match the equipment you actually have. Sessions are logged set by set with the previous session's weights prefilled, a rest timer, per-exercise history, and estimated-1RM personal records. Plans are fully editable: reorder, retitle, change sets/reps/rest, duplicate, activate, or build one from scratch. Partial and skipped sessions are first-class.
Nutrition. 265 Indian foods with real serving units — roti, katori, bowl, glass, piece — and raw vs cooked kept distinct where it matters. Custom foods, multi-ingredient recipes with automatic per-serving maths, saved meals, recents, favourites, repeat-yesterday, and a free-text quick add. Protein and fiber are the two macros given visual priority.
Body, sleep and recovery. Weight with an exponentially-weighted trend line (so a heavy dinner does not read as fat gain), tape measurements, manual sleep logging with a consistency score, and a readiness score built from sleep, soreness, energy, stress and recent training load.
Analytics. Weekly volume, strength curves, muscle-group balance, protein and fiber adherence, sleep averages, derived milestones, plus deterministic written insights that read the data and say something specific.
Reminders are in-app only: a due reminder shows on the home screen and disappears the moment the thing it is nudging you about is logged. Nothing is pushed or emailed.
Units. Body weight and measurements can be shown in kg/cm or lb/in; training loads stay in kg because that is how plates are marked.
Taken from the supplied references and applied throughout:
effectiveFrom, so changing a goal does not retroactively alter whether
past days "hit target".userId and every mutation re-checks ownership.convex/analytics.ts) is deliberately deterministic. It is the seam an AI
coaching layer plugs into later — the data it reads is already shaped for that.Calorie, macro and readiness figures are estimates from public formulas and composition tables. The app does not diagnose, treat or advise on health conditions.