cleanyourtv-app
Clean Your TV를 위한 커뮤니티 제작 모바일 앱
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
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).