尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗This is a Next.js project bootstrapped with create-next-app.
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.
This project uses next/font to automatically optimize and load Geist, a new font family for Vercel.
To learn more about Next.js, take a look at the following resources:
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.
O app usa Postgres no Neon via @neondatabase/serverless (src/lib/db.ts), configurado pela variável DATABASE_URL.
db/schema.sql (equivale às migrations 001–018 de supabase/migrations, que ficam só como histórico).pg_cron + pg_net chamando as rotas do app, ver abaixo); ele não guarda mais dados do app.As notificações são enviadas por um bot do Telegram, com agendamento de hora em hora via Supabase pg_cron (só dispara as chamadas HTTP; os dados ficam no Neon).
O que o usuário recebe (respeitando categorias e horário silencioso definidos em /notifications):
| Quando | Mensagem |
|---|---|
| Fim do horário silencioso (padrão 7h) | Bom dia: resumo de ontem, foco do dia e metas |
| 9h–20h, só se abaixo do ritmo | Hidratação (máx. 3/dia, intervalo ≥ 2h30) com botões +250ml / +500ml |
| 10h / 14h / 20h | Café, almoço ou jantar não registrado, com saldo de kcal e proteína |
| 18h, após 2+ dias sem treino | Lembrete de treino |
| 1h antes do silencioso (padrão 21h) | Fechamento do dia com metas batidas |
Comandos do bot: /resumo, /agua 300, /ajuda, /desconectar.
Chat limpo: os comandos do usuário são apagados assim que processados. As mensagens do bot somem ao tocar num botão ou ao expirar: lembretes em 2h, respostas de comandos em 10 min, e resumos quando chega o próximo resumo. A limpeza roda a cada 10 min (/api/telegram/cleanup, migration 015).
Configuração
TELEGRAM_BOT_TOKEN — token do BotFatherTELEGRAM_BOT_USERNAME — username do bot (sem @)TELEGRAM_WEBHOOK_SECRET — string aleatória (A-Z a-z 0-9 _ -, até 256 caracteres)APP_URL — URL pública do app, ex.: https://healthcoach.vercel.appCRON_SECRET — já existentepg_cron das migrations 014_telegram_notifications.sql e 015_telegram_message_cleanup.sql e cadastre os segredos:
SELECT vault.create_secret('https://SEU-APP.vercel.app', 'app_url');
SELECT vault.create_secret('<CRON_SECRET>', 'cron_secret');
curl -H "Authorization: Bearer $CRON_SECRET" https://SEU-APP.vercel.app/api/telegram/setup
Tela Corpo → Treinos IA (/treinos). Gera um plano semanal de treino com IA, em casa ou na academia, com séries, repetições, descanso, carga e explicação de execução de cada exercício.
🏋️ Musculação, então dashboard, Coach IA e Telegram passam a contar o treino.As tabelas de treino já fazem parte de db/schema.sql.