Easy-to-manage touch screens
무료 오픈소스 터치스크린으로 USB 설정 가이드, 드래그‑드롭 편집기, 로컬 제어를 제공하며 Home Assistant용으로 제작되었습니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기AI-powered personalized guidebook for short-term rentals — Seazone AI Builder Challenge
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Guia personalizado de hospedagem gerado por IA. Cada imóvel tem uma URL única com dados completos, conteúdo local gerado por IA e um assistente de chat contextual. Demonstração de um guidebook digital personalizado por imóvel, com geração de conteúdo por IA grounded em lugares reais. O guia atual da Seazone é genérico e idêntico em todos os imóveis. Este projeto demonstra uma alternativa personalizada onde cada propriedade tem conteúdo único.README 전문 보기 ↗
Guia personalizado de hospedagem gerado por IA. Cada imóvel tem uma URL única com dados completos, conteúdo local gerado por IA e um assistente de chat contextual.
Demo: https://seazone-ai-guide.vercel.app
Demonstração de um guidebook digital personalizado por imóvel, com geração de conteúdo por IA grounded em lugares reais. O guia atual da Seazone (https://guia-do-hospede.seazone.com.br) é genérico e idêntico em todos os imóveis. Este projeto demonstra uma alternativa personalizada onde cada propriedade tem conteúdo único.
Imóveis de demonstração:
npm install.env na raiz e preencher: cp .env.example .envSe você preferir não criar conta no Neon, pode rodar Postgres local via Docker:
docker run -d \
--name seazone-pg \
-e POSTGRES_PASSWORD=postgres \
-e POSTGRES_DB=seazone \
-p 5432:5432 \
postgres:16
# Depois, em .env:
# DATABASE_URL=postgresql://postgres:postgres@localhost:5432/seazone
Qualquer Postgres 14+ funciona — Supabase, Railway, RDS, etc.
npx prisma migrate deploynpx prisma db seednpm run dev — abre em http://localhost:3000| Variável | Obrigatória | Descrição |
|---|---|---|
DATABASE_URL | Sim | String de conexão PostgreSQL |
ANTHROPIC_API_KEY | Sim | Chave da API Anthropic para Claude |
GOOGLE_PLACES_API_KEY | Não | Habilita modo RAG (lugares reais em vez de conhecimento parametric do LLM) |
O Prisma CLI lê
.env. O Next.js lê.env(e.env.localcomo override opcional). Manter apenas o.envé suficiente para rodar o projeto — e garante que migrations/seed (Prisma CLI) e a app (Next.js) usem a mesmaDATABASE_URL.
Este projeto precisa de dois serviços externos. As chaves de produção não são compartilhadas por segurança, mas os dois providers oferecem free tiers suficientes para rodar localmente.
DATABASE_URL (PostgreSQL) — obrigatóriaCaminho mais rápido: conta gratuita no Neon.
postgresql://user:pass@host/db?sslmode=require).env como DATABASE_URLAlternativa: qualquer Postgres 14+ (Docker local, Supabase, Railway, etc.) funciona da mesma forma.
ANTHROPIC_API_KEY — obrigatóriask-ant-...).env como ANTHROPIC_API_KEYContas novas recebem $5 USD de free credit. Rodar este projeto end-to-end (gerar os 4 guias + algumas dezenas de mensagens no chat) custa menos de $0.50 USD no total.
Nota sobre flexibilidade de provider: o Vercel AI SDK abstrai o provider.
Trocar para OpenAI, Gemini ou Groq exige alterar o import do modelo em
lib/services/guide.service.ts e app/api/chat/route.ts (cerca de 2 linhas).
O Claude Sonnet 4.6 foi escolhido pela fluência em PT-BR e adesão estrita às
regras de anti-hallucination — o design dos prompts assume esse comportamento.
GOOGLE_PLACES_API_KEY — opcional (habilita modo RAG)A geração do guia tem dois modos:
Nota: o deploy em https://seazone-ai-guide.vercel.app roda em modo RAG — Google Places API ativa em produção. Os 4 guides cacheados foram gerados com lugares verificados, validáveis no Google Maps (nomes, endereços e bairros reais). O fallback continua disponível como graceful degradation para desenvolvimento local ou caso a Places API falhe em runtime.
O projeto roda end-to-end sem esta chave. O fallback gera um warning no log mas não causa erro.
Para habilitar modo RAG:
.env como GOOGLE_PLACES_API_KEYVerificando o setup: após configurar DATABASE_URL e ANTHROPIC_API_KEY e
rodar npx prisma db seed, você deve ver "4 properties seeded" no terminal.
Acessando http://localhost:3000 deve mostrar a landing com 4 cards de imóveis.
Clicar em qualquer imóvel carrega a página e dispara a geração do guia na
primeira visita (~20-30 segundos) e cacheia visitas subsequentes.
Para mais detalhes sobre decisões de stack, convenções e trade-offs, veja CLAUDE.md. Para system prompts e chat invariants, veja docs/PLANNING.md. Para resultados dos testes anti-hallucination, veja docs/chat-verification.md.
app/
[code]/page.tsx — Página do imóvel (rota dinâmica, Server Component)
api/chat/route.ts — Endpoint de chat com streaming (Vercel AI SDK)
api/generate-guide/ — Endpoint de geração do guia (idempotente, com cache)
not-found.tsx — 404 amigável para códigos inválidos
page.tsx — Landing com diretório dos imóveis
components/
property/ — Seções específicas do imóvel (Hero, QuickInfo, Access, Rules, Amenities, Contact)
guide/ — UI do guia gerado por IA (skeleton, restaurantes, atrações, essenciais, dica da estação)
chat/ — Assistente de chat flutuante (FAB + Sheet/Drawer, lista de mensagens, input, chips de início)
landing/ — PropertyCard para o diretório da landing
ui/ — Primitivas shadcn (Button, Card, Badge, Sheet, etc.)
lib/
ai/prompts/ — System prompts para o gerador de guia e chat (PT-BR, anti-hallucination)
ai/schemas.ts — Schema Zod para output estruturado do ExperienceGuide
services/ — property.service, guide.service, places.service (retrieval para RAG)
types/ — Interfaces tipadas de property e respostas de IA
constants.ts — Modelo de IA, temperaturas, limites, regex
errors.ts — Erros de domínio tipados (PropertyNotFoundError, AIGenerationError, etc.)
db.ts — Singleton do Prisma client
prisma/
schema.prisma — Modelos Property e GeneratedGuide com campos JSON
seed.ts — 4 imóveis demo (FLN001, GRM001, SP001, SAL001)
migrations/ — Migrations versionadas do schema
docs/
PLANNING.md — System prompts, chat invariants, histórico de iteração
chat-verification.md — Resultados dos testes anti-hallucination (9 invariantes)
spec-data.json — Dados verbatim dos imóveis do enunciado do desafio
.claude/
skills/prompt-tester/ — Chat invariants e protocolo de refinamento de prompt
commands/ — Slash commands /commit e /new-feature
settings.json — Allowlist de permissões