尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證製作者的介紹僅有上面的一句話。 更多詳情請閱讀儲存庫 README。 儲存庫 README ↗
正在載入完整 README。
檢視完整 README ↗Site colaborativo onde pessoas relatam os estímulos sensoriais dos lugares de Porto Alegre (som, luz, cheiro, lotação, visual, temperatura) e quando eles acontecem. A especificação do produto está em SPEC.md.
Stack: Next.js 16 (App Router, TypeScript, Tailwind 4) · Supabase (Postgres + login por link mágico) · MapLibre GL com tiles do OpenFreeMap.
.env.example para .env.local e preencha com as chaves do projeto
(Painel › Project Settings › API Keys).supabase link --project-ref SEU-PROJETO
supabase db push
http://localhost:3000 em desenvolvimento) e adicione http://localhost:3000/auth/callback
às Redirect URLs.npm run importar-osm
Use -- --simular para só ver o que seria importado. Se o Overpass estiver sobrecarregado,
tente mais tarde ou defina outro servidor em OVERPASS_URL.npm install
npm run dev
| Comando | O que faz |
|---|---|
npm run dev | Servidor de desenvolvimento em localhost:3000 |
npm test | Testes das regras de cálculo (Vitest) |
npm run typecheck | Checagem de tipos |
npm run lint | ESLint |
npm run importar-osm | Importa/atualiza lugares do OpenStreetMap |
supabase/migrations/: esquema do banco, regras de acesso (RLS) e função de busca.src/lib/calculo.ts: badges, melhor horário e ordenação por sensibilidade (regras da SPEC),
com testes em calculo.test.ts.src/lib/estimulos.ts: lista fixa de estímulos, intensidades e categorias.src/lib/perfil.ts: perfil sensorial, guardado só no localStorage.src/lib/dados.ts: consultas ao banco. src/lib/acoes/: Server Actions (relatos, lugares, conta).src/app/: páginas (busca, lugar, relatar, conta…).scripts/importar-osm.ts: importação inicial do OpenStreetMap.animation e transition; o mapa não tem rotação,
inclinação nem esmaecimento; a rolagem só dá zoom com Ctrl/⌘ e não prende a página.cacheComponents: false): a página aparece pronta de uma vez,
sem placeholders que mudam o layout.denuncias, visível só pelo painel do Supabase
(moderação manual).SUPABASE_SECRET_KEY no servidor; os relatos são apagados em cascata.