BernuviaBernuvia
Category: SaaSWeb

Atlas — Directory & Booking Marketplace SaaS (Next.js 16 + Stripe + PostgreSQL)

1/21
#directory#booking#marketplace#saas#stripe

Production-ready directory platform: map search, 4 booking modes, Stripe payments & commissions, reviews, messaging, page builder and design studio. Multi-tenant SaaS, light/dark, 4-step install.

45 USDC59 USDC−24%

Protected payment

Your money stays in escrow for 30 hours

Instant delivery

Download the full code right after paying

Backed purchase

Any issue? File a report

What's included
  • Full Next.js 16 + TypeScript source: platform, directory, owner dashboard and admin
  • Original design system (Tailwind v4), light & dark mode, 32 page-builder blocks
  • Drizzle schema (48 tables) + migrations, seed scripts and 12 niche templates
  • Bookings, Stripe Checkout & Connect, commissions, coupons, tickets with QR
Technologies
NENext.jsTYTypeScriptPOPostgreSQLSTStripeTATailwind CSS
Description

Why Atlas?

Atlas is not a UI kit or a landing page: it is a working directory and booking marketplace. Every screen below is backed by a real PostgreSQL schema (48 Drizzle tables), server actions, role-based auth and rich seed data, so you can launch a city guide, a rentals marketplace, a restaurant directory, an events platform or any niche directory in days instead of months.

It covers the whole cycle: a visitor searches on the map, picks a place, books and pays, the owner confirms from their dashboard, the directory admin keeps the commission, and the platform runs many directories as a SaaS. No WordPress, no plugins, no page-builder lock-in.

  • Standalone Next.js 16 + React 19 application, 100% TypeScript, all UI and code in English
  • Multi-tenant SaaS: subdomains or custom domains per directory, plans, trials and billing
  • Four booking modes: nightly stays, single-day reservations, hourly slots and event tickets with QR check-in
  • Stripe Checkout + Stripe Connect payouts, cash on arrival, coupons, optional fees, deposits, refunds and a commission ledger
  • Search with clustered map, filters, saved searches, compare and "search as I move the map"
  • 32-block page builder, branding, navigation, texts and feature toggles — all from the admin
  • Per-listing design studio so every owner can style their own public page
  • Reviews with photos and replies, bookmarks, claims, reports, leads, messaging and notifications
  • Editable email templates, blog, newsletter and contact forms
  • 12 niche templates (city guide, rentals, restaurants, events, services, wellness…) switchable at any time
  • Light and dark mode, fully responsive, accessible components, SEO metadata and OpenGraph
  • Realistic demo data: 24 listings, bookings, orders, reviews and conversations

01. See it work: a visitor books in seconds

The booking widget adapts to the listing type. Stays show a date-range calendar with nightly pricing, cleaning fees and city tax. Restaurants and services show a single day with time slots computed from opening hours, slot length and existing bookings. Events sell tickets with a capacity counter that can never oversell. Guests can check out without an account when you allow it, apply coupons and pay by card or cash on arrival.

02. A home page that sells your directory

The home page is built from blocks: hero with search, categories, featured listings, how it works, stats, regions, upcoming events, reviews and a call to action. Reorder, hide or restyle each block from the page builder; every headline and label is editable.

03. Map search with filters

Keyword, location, listing type, category, dates, guests, price, open-now, instant booking and verified filters. Results sync with a clustered Leaflet map (OpenStreetMap tiles by default, any tile provider via an environment variable). Visitors can save a search and get notified, or compare listings side by side.

04. Listing pages owners are proud of

Gallery, verified badge, rating, price range, open-now status, amenities, custom fields, menu or services with prices, video, location map, opening hours, FAQ, host card, reviews and a persistent booking sidebar. Owners can reorder sections, add custom blocks and change the layout from their own design studio.

05. Owner dashboard: a real business cockpit

Overview with revenue chart and upcoming bookings, listings manager, bookings with approve / decline / cancel / check-in, availability calendar with iCal import and export, messages, leads, reviews, statistics, coupons, promotions (featured / sponsored), team members, wallet with Stripe Connect onboarding and packages.

06. Directory admin: customize everything, no code

Branding (logo, colors, fonts, radius), appearance (header style, announcement bar, footer), mega-menu navigation, 127 editable text strings, feature toggles, email templates, listing types with custom fields and taxonomies, packages, ads, coupons, moderation, claims, reports, users, analytics and tools. Switch between the 12 niche templates at any time.

07. Run it as a SaaS

The root domain is your platform: marketing site, pricing, signup and a 4-step onboarding that provisions a new directory on its own subdomain in seconds. Plans with limits (listings, users, features), trials, Stripe Billing and a platform super-admin to manage sites, users and plans. Or set TENANCY_MODE=single to run one directory on one domain.

08. Mobile, dark mode and accessibility

Every page works at phone width with no horizontal scroll, dark mode follows the system or a toggle, components come from an original design system (indigo brand, warm neutrals, Plus Jakarta Sans) with keyboard navigation and focus states.

Feature breakdown by role

Visitors / guests: search with map and filters · saved searches · compare · bookmarks · book stays, slots or tickets · guest checkout · coupons · reviews with photos · messages with hosts · trips, tickets with QR and wallet

Owners: listings with gallery, custom fields, menu, FAQ, hours and video · bookings workflow · availability calendar + iCal · leads and messages · statistics · coupons and promotions · team members · design studio · Stripe Connect wallet · packages

Directory admins: branding, appearance, navigation, texts, features · page builder (32 blocks) · template switcher · listing types, fields, taxonomies · moderation, claims, reports, reviews · bookings, orders, payouts · packages, coupons, ads · email templates · analytics · media library · domain

Platform admins: sites, users, plans, suspension, billing

Tech stack

  • Next.js 16 (App Router, server actions, proxy-based tenant routing)
  • React 19, TypeScript, Tailwind CSS v4
  • PostgreSQL 16 + Drizzle ORM (48 tables, migrations included)
  • Better Auth (email + password, sessions, password reset)
  • Stripe (Checkout, Billing, Connect) with a test mode that works without keys
  • Zod 4 validation, Leaflet + supercluster maps, Recharts
  • nodemailer (console transport in dev), node-ical / ical-generator, QR codes
  • Vitest (55 tests), ESLint, GitHub Actions CI, Docker + docker-compose, standalone output, health endpoint

What you get

  • Full source code of the platform, directory, owner dashboard and admin
  • 12 niche templates with seed scripts and demo content
  • Database migrations, cron jobs and a storage driver interface (local / S3-compatible)
  • Architecture guide, README with deployment, Stripe and SMTP setup, privacy and data guide, third-party notices, changelog

Install in 4 steps

  1. pnpm install
  2. Copy .env.example to .env and set DATABASE_URL, ROOT_DOMAIN and BETTER_AUTH_SECRET
  3. pnpm db:migrate && pnpm seed
  4. pnpm dev and open the platform at your root domain and the demo at demo.<root domain>

Requirements

  • Node.js 20 or newer and pnpm
  • PostgreSQL 16 (Docker compose included)

Demo accounts (after seeding)

The seed creates demo accounts for local evaluation: admin@atlas.test (platform + directory admin), sofia@nooks.test (owner) and emma@nooks.test (guest). There is no built-in password: set DEMO_PASSWORD in your .env, or let the seed generate a random one and save it to .seed-credentials.txt. The seed refuses to run in production without an explicit DEMO_PASSWORD.

Good to know

  • Clean-room build: original code and original design system, no GPL theme code or licensed assets
  • Stripe is optional; without keys the checkout runs in a test mode you can demo immediately
  • All public strings are editable from the admin, so you can translate the front end to any language
  • Security defaults: rate-limited sign-in and password reset, security headers, startup configuration check, no analytics or third-party scripts loaded by default

Related templates

−27%

MediAgenda — Complete Medical Booking SaaS (Next.js 14 + Stripe + Prisma)

Production-ready medical platform: online booking, doctor profiles with reviews, real-time chat, Stripe payments, medical records and white-label admin. 4 roles, bilingual EN/ES, 4-step install.

SaaS

62 USDC85 USDC
(1)1
−25%

Vetria — Multi-clinic SaaS for Veterinary Clinics (Next.js 15 + NestJS 11)

Veterinary software with source code: scheduling, records, PDF prescriptions, payments, cash management, inventory, hospitalization, and guardian portal. Multi-clinic with RLS. Interface only in Spanish.

SaaS

49 USDC65 USDC
−23%

Brasswork: multi-tenant SaaS ERP template for small businesses

Run your own operations SaaS: invoicing, point of sale, stock, purchasing, double-entry books, people and pay, pipeline and projects, with plans, Stripe and PayPal. Next.js 16 + PostgreSQL.

SaaS

53 USDC69 USDC

No reviews yet. Be the first to share your experience.