cleanyourtv-app
A community-built phone app for Clean Your TV: clean up an Android TV from your phone. No laptop, no coding agent, nothing uninstalled.
O sistema operacional para sua rotina. Design minimalista, inteligência artificial e alta performance.
Translation pending
OtherTypeScript · JavaScriptGitHub @LGDIOGOOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗App de produtividade pessoal: hábitos, agenda, metas, trabalho, finanças, estudos e um assistente de IA.
Stack: Next.js 14 (App Router) · TypeScript · Tailwind · Framer Motion · Firebase (Auth, Firestore, Storage) · TanStack Query · Groq + Gemini.
Produção: https://focusos-rlvs.vercel.app · Repositório: https://github.com/LGDIOGO/FOCUSOS
npm install
cp .env.example .env.local # no Windows: copy .env.example .env.local
# preencha o .env.local (veja os comentários no .env.example)
npm run dev # http://localhost:3000
Sem o .env.local preenchido o app abre, mas login, IA e Google Calendar não funcionam.
O .env.local nunca vai para o git.
Antes de subir qualquer mudança (o build da Vercel pula a checagem de tipos, então erros passam batido):
npx tsc --noEmit # tipos
npm test # vitest — suíte de regressão (ver docs/testes.md)
Documentação completa em docs/ (ambientes, testes, armadilhas, decisões, bugs corrigidos).
develop (ambiente de dev/preview); só vai para main depois de validado. Ver docs/ambientes.md.main. Todo push para main faz deploy automático na Vercel.vercel --prod pela CLI: o push já publica, e o token da CLI expira.sync.bat / git-sync.sh. Eles fazem git add . + commit "Sync: Auto Update"
main. Como push na main publica, isso manda para produção tudo o que
estiver na pasta, sem revisão — é daí que vêm os commits do autor "FocusOS Auto-Sync".
Prefira commitar à mão, com git status e git diff antes.firestore.rules ou storage.rules? O push não publica regras. Rode:
npx firebase-tools deploy --only firestore:rules
npx firebase-tools deploy --only storage
app/(app)/dashboard/ páginas: agenda, habits, goals, trabalho, finance, study, ia, insights...
app/api/ rotas de servidor (IA, integrações, API pública v1, webhooks)
components/ UI; dashboard/ tem os modais e componentes de cada módulo
lib/hooks/ acesso a dados (React Query + Firestore), um arquivo por domínio
lib/utils/ lógica pura: recurrence.ts, calendarScheduling.ts, googleCalendar.ts...
lib/ai/models.ts lista ordenada de modelos de IA com fallback
firestore.rules regras de segurança do banco
storage.rules regras do Storage (anexos do Trabalho)
focusos-mcp/ servidor MCP auxiliar (instale com npm install dentro da pasta)
lib/utils/recurrence.ts (occursOn).
Hábitos, compromissos, trabalho e Google Calendar usam ela. Não crie outra cópia.categories), separadas pelo campo type:
habits | agenda | goals | work_type | work_category. Use useCategories('escopo') para filtrar.lib/ai/models.ts;
a cascata tenta o próximo sozinha.FIREBASE_CLIENT_EMAIL e FIREBASE_PRIVATE_KEY no servidor,
além das três variáveis GOOGLE_CALENDAR_*.claude/ e a pasta .claude/ são do Claude Code e ficam fora do git e do deploy
(.gitignore e .vercelignore).