尚未检测到更新。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.