Easy-to-manage touch screens
무료 오픈소스 터치스크린으로 USB 설정 가이드, 드래그‑드롭 편집기, 로컬 제어를 제공하며 Home Assistant용으로 제작되었습니다
결혼식 사이트를 만들고 참석 확인·현금 선물 수령을 Aceito에서 확인 플랜·수수료 확인
Criem o site do casamento, acompanhem confirmações de presença e recebam presentes em dinheiro com o Aceito. Conheçam os planos e as taxas.
라이프스타일TypeScript · CSSGitHub @lucasnauberth28온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Plataforma de gestão de casamentos: painel dos noivos (convidados, RSVP, mesas, credenciamento, finanças, presentes com Pix/cartão, cronograma, WhatsApp), site público do casal e marketplace de fornecedores.
Stack: Next.js 16 (App Router, Server Actions, proxy.ts), React 19, Prisma 7 + Postgres (Supabase),
Mercado Pago, Supabase Storage, Evolution API (WhatsApp), Tailwind 4 + shadcn/ui.
Esta versão do Next.js tem mudanças incompatíveis com versões anteriores. Consulte
node_modules/next/dist/docs/antes de alterar código (vejaAGENTS.md).
cp .env.example .env.local # preencha as variáveis
npm install
npm run db:migrate # aplica as migrations
npm run db:seed # (opcional) fornecedores de demonstração
npm run dev
Scripts úteis: npm run typecheck, npm run lint, npm test.
Todo campo digitável ou selecionável usa o rótulo flutuante (comportamento da variante "on" do FloatLabel do PrimeVue): o rótulo repousa dentro do campo e, com foco ou valor, sobe até a linha da borda, que fica interrompida só atrás dele. O estado vem de CSS (:placeholder-shown, :autofill, :focus), sem re-render por tecla. Estilos em src/components/ui/float-field.css; componentes em src/components/ui/.
<Input label="E-mail" icon={Mail} type="email" error={erro} hint="…" optional />
<Textarea label="Mensagem" />
<Select value={v} onValueChange={setV}><SelectTrigger label="Categoria"><SelectValue /></SelectTrigger>…</Select>
<NativeSelect label="Status">…</NativeSelect>
<DatePicker label="Data" … /> <TimePicker label="Hora" … /> <SearchableSelect label="Cidade" … />
<Field id="x" label="Algo">{(c) => <input {...c} name="x" />}</Field> // controle próprio
Sem a prop label, Input, Textarea e SelectTrigger continuam o primitivo simples (células editáveis, buscas só com lupa). Checkbox, radio, switch, slider, upload e seletor de cor não usam rótulo flutuante. float-field.css é copiado em floatlabel-demo.html quando for levado ao design system.
requirePathPermission("/modulo")
(ou requireAuthSession()) de src/lib/security/auth-guard.ts na primeira linha. Ações públicas
(RSVP, checkout, mural, avaliações, leads, cadastro) validam a entrada com zod e aplicam rateLimitByIp.proxy.ts é deny-by-default e serve apenas para redirecionamento otimista; a autorização real
acontece no servidor, relendo usuário e perfil do banco a cada request./financas. Dados de cartão são tokenizados no
navegador (MercadoPago.js) e nunca passam pelo servidor.src/lib/plans.ts, nunca do navegador.normalizeText, não sanitizeHtmlText): o React já escapa.O build (next build) não acessa o banco: as páginas que leem dados são renderizadas por request.
Migrations também não rodam no build, porque deploys de Preview (qualquer branch) apontariam para
o banco de produção. O antigo prisma db push --accept-data-loss foi removido: ele podia apagar dados.
Aplique migrations de forma explícita, com a DIRECT_URL do ambiente desejado:
npm run db:migrate # prisma migrate deploy
Banco de produção criado com db push (uma única vez): marque as migrations existentes como
aplicadas, para que não sejam executadas sobre tabelas que já existem:
npx prisma migrate resolve --applied 20260428143558_init_marry_app
npx prisma migrate resolve --applied 20261007120000_baseline_current_schema
npx prisma migrate status # deve indicar "Database schema is up to date"
Daqui em diante, mudanças de schema são feitas com npx prisma migrate dev --name <descricao> e
aplicadas com npm run db:migrate antes (ou junto) do deploy que depende delas.
DATABASE_URL e DIRECT_URLDATABASE_URL: pooler em modo transação, porta 6543 (...pooler.supabase.com:6543/postgres?pgbouncer=true).DIRECT_URL: conexão de sessão, porta 5432, usada só pelo Prisma CLI.aws-0-sa-east-1) e o usuário inclui o ref (postgres.<ref>).Tenant or user not found significa que o pooler não reconhece o projeto: região/host
errados, ref errado, ou projeto pausado (projetos gratuitos pausam após inatividade).