Por que Atlas?
Atlas não é um kit de UI ou uma página de destino: é um diretório de trabalho e mercado de reservas. Cada tela abaixo é suportada por um verdadeiro esquema PostgreSQL (48 tabelas Drizzle), ações de servidor, autenticação baseada em funções e dados ricos de exemplo, para que você possa lançar um guia da cidade, um mercado de aluguéis, um diretório de restaurantes, uma plataforma de eventos ou qualquer diretório de nicho em dias, em vez de meses.
Cobre todo o ciclo: um visitante pesquisa no mapa, escolhe um lugar, reserva e paga, o proprietário confirma a partir de seu painel, o administrador do diretório mantém a comissão e a plataforma gerencia muitos diretórios como um SaaS. Sem WordPress, sem plugins, sem bloqueio de construtor de páginas.
- Aplicação independente Next.js 16 + React 19, 100% TypeScript, toda a UI e código em inglês
- SaaS multi-inquilino: subdomínios ou domínios personalizados por diretório, planos, testes e faturamento
- Quatro modos de reserva: estadias noturnas, reservas de um dia, horários por hora e ingressos para eventos com check-in por QR
- Stripe Checkout + pagamentos Stripe Connect, pagamento em dinheiro na chegada, cupons, taxas opcionais, depósitos, reembolsos e um livro de comissões
- Pesquisa com mapa agrupado, filtros, pesquisas salvas, comparação e "pesquisar enquanto movo o mapa"
- Construtor de páginas de 32 blocos, branding, navegação, textos e alternâncias de recursos — tudo a partir do admin
- Estúdio de design por listagem para que cada proprietário possa estilizar sua própria página pública
- Avaliações com fotos e respostas, favoritos, reivindicações, relatórios, leads, mensagens e notificações
- Modelos de e-mail editáveis, blog, newsletter e formulários de contato
- 12 modelos de nicho (guia da cidade, aluguéis, restaurantes, eventos, serviços, bem-estar…) que podem ser trocados a qualquer momento
- Modo claro e escuro, totalmente responsivo, componentes acessíveis, metadados SEO e OpenGraph
- Dados de demonstração realistas: 24 listagens, reservas, pedidos, avaliações e conversas
01. Veja funcionar: um visitante reserva em segundos
O widget de reserva se adapta ao tipo de listagem. As estadias mostram um calendário de intervalo de datas com preços noturnos, taxas de limpeza e imposto municipal. Restaurantes e serviços mostram um único dia com horários calculados a partir do horário de funcionamento, duração do horário e reservas existentes. Eventos vendem ingressos com um contador de capacidade que nunca pode ser excedido. Os hóspedes podem finalizar a compra sem uma conta quando você permitir, aplicar cupons e pagar com cartão ou em dinheiro na chegada.


02. Uma página inicial que vende seu diretório
A página inicial é construída a partir de blocos: herói com pesquisa, categorias, listagens em destaque, como funciona, estatísticas, regiões, eventos futuros, avaliações e um chamado à ação. Reordene, esconda ou reestilize cada bloco a partir do construtor de páginas; cada título e rótulo é editável.


03. Pesquisa no mapa com filtros
Palavra-chave, localização, tipo de listagem, categoria, datas, hóspedes, preço, aberto agora, reserva instantânea e filtros verificados. Os resultados sincronizam com um mapa Leaflet agrupado (tiles do OpenStreetMap por padrão, qualquer provedor de tiles via uma variável de ambiente). Os visitantes podem salvar uma pesquisa e serem notificados, ou comparar listagens lado a lado.

04. Páginas de listagem que os proprietários se orgulham
Galeria, badge verificado, classificação, faixa de preço, status aberto agora, comodidades, campos personalizados, menu ou serviços com preços, vídeo, mapa de localização, horário de funcionamento, FAQ, cartão do anfitrião, avaliações e uma barra lateral de reserva persistente. Os proprietários podem reordenar seções, adicionar blocos personalizados e mudar o layout a partir de seu próprio estúdio de design.

05. Painel do proprietário: um verdadeiro cockpit de negócios
Visão geral com gráfico de receita e reservas futuras, gerenciador de listagens, reservas com aprovar / recusar / cancelar / check-in, calendário de disponibilidade com importação e exportação iCal, mensagens, leads, avaliações, estatísticas, cupons, promoções (em destaque / patrocinadas), membros da equipe, carteira com integração Stripe Connect e pacotes.



06. Admin do diretório: personalize tudo, sem código
Branding (logo, cores, fontes, raio), aparência (estilo do cabeçalho, barra de anúncios, rodapé), navegação de mega-menu, 127 strings de texto editáveis, alternâncias de recursos, modelos de e-mail, tipos de listagem com campos e taxonomias personalizadas, pacotes, anúncios, cupons, moderação, reivindicações, relatórios, usuários, análises e ferramentas. Troque entre os 12 modelos de nicho a qualquer momento.




07. Execute como um SaaS
O domínio raiz é sua plataforma: site de marketing, preços, inscrição e um onboarding em 4 etapas que provisiona um novo diretório em seu próprio subdomínio em segundos. Planos com limites (listagens, usuários, recursos), testes, Stripe Billing e um super-admin da plataforma para gerenciar sites, usuários e planos. Ou defina TENANCY_MODE=single para executar um diretório em um domínio.


08. Móvel, modo escuro e acessibilidade
Cada página funciona na largura do telefone sem rolagem horizontal, o modo escuro segue o sistema ou um alternador, os componentes vêm de um sistema de design original (marca indigo, neutros quentes, Plus Jakarta Sans) com navegação por teclado e estados de foco.

Divisão de recursos por função
Visitantes / convidados: pesquisa com mapa e filtros · pesquisas salvas · comparar · favoritos · reservar estadias, horários ou ingressos · checkout de convidados · cupons · avaliações com fotos · mensagens com anfitriões · viagens, ingressos com QR e carteira
Proprietários: listagens com galeria, campos personalizados, menu, FAQ, horários e vídeo · fluxo de trabalho de reservas · calendário de disponibilidade + iCal · leads e mensagens · estatísticas · cupons e promoções · membros da equipe · estúdio de design · carteira Stripe Connect · pacotes
Administradores de diretório: branding, aparência, navegação, textos, recursos · construtor de páginas (32 blocos) · alternador de modelos · tipos de listagens, campos, taxonomias · moderação, reivindicações, relatórios, avaliações · reservas, pedidos, pagamentos · pacotes, cupons, anúncios · modelos de email · análises · biblioteca de mídia · domínio
Administradores da plataforma: sites, usuários, planos, suspensão, faturamento
Pilha tecnológica
- Next.js 16 (App Router, ações do servidor, roteamento de inquilinos baseado em proxy)
- React 19, TypeScript, Tailwind CSS v4
- PostgreSQL 16 + Drizzle ORM (48 tabelas, migrações incluídas)
- Better Auth (email + senha, sessões, redefinição de senha)
- Stripe (Checkout, Billing, Connect) com um modo de teste que funciona sem chaves
- Validação Zod 4, Leaflet + supercluster maps, Recharts
- nodemailer (transporte de console em dev), node-ical / ical-generator, códigos QR
- Vitest (55 testes), ESLint, GitHub Actions CI, Docker + docker-compose, saída autônoma, endpoint de saúde
O que você recebe
- Código-fonte completo da plataforma, diretório, painel do proprietário e admin
- 12 modelos de nicho com scripts de semente e conteúdo de demonstração
- Migrações de banco de dados, jobs cron e uma interface de driver de armazenamento (local / compatível com S3)
- Guia de arquitetura, README com implantação, configuração do Stripe e SMTP, guia de privacidade e dados, avisos de terceiros, changelog
Instalação em 4 etapas
pnpm install- Copie
.env.example para .env e defina DATABASE_URL, ROOT_DOMAIN e BETTER_AUTH_SECRET pnpm db:migrate && pnpm seedpnpm dev e abra a plataforma no seu domínio raiz e a demonstração em demo.<root domain>
Requisitos
- Node.js 20 ou mais recente e pnpm
- PostgreSQL 16 (Docker compose incluído)
Contas de demonstração (após a semeadura)
A semente cria contas de demonstração para avaliação local: admin@atlas.test (admin da plataforma + diretório), sofia@nooks.test (proprietário) e emma@nooks.test (convidado). Não há senha embutida: defina DEMO_PASSWORD no seu .env, ou deixe a semente gerar uma aleatória e salvá-la em .seed-credentials.txt. A semente se recusa a ser executada em produção sem uma DEMO_PASSWORD explícita.
Bom saber
- Construção em sala limpa: código original e sistema de design original, sem código de tema GPL ou ativos licenciados
- Stripe é opcional; sem chaves, o checkout funciona em um modo de teste que você pode demonstrar imediatamente
- Todas as strings públicas são editáveis a partir do admin, para que você possa traduzir o front end para qualquer idioma
- Defaults de segurança: login e redefinição de senha limitados por taxa, cabeçalhos de segurança, verificação de configuração de inicialização, sem análises ou scripts de terceiros carregados por padrão