Set Up Atlas — Car Rental Management SaaS

Clone Atlas, connect your own Supabase backend, customize the SaaS, and deploy your own independent version.

Roadmap & Resources

Requirements (Before You Start)

Install Node.js

Use the current LTS release.

Download Node.js

https://nodejs.org/en/download

Install Git

Download Git

https://git-scm.com/

Create a GitHub account

You'll connect your Atlas repository to Hostinger in Step 4.

Create GitHub Account

https://github.com/signup

Create a Supabase account

You'll create the Atlas project in Step 2.

Create Supabase Account

https://supabase.com/dashboard

Prepare your hosting

Choose a Hostinger Plan

Use Business Web Hosting or a Cloud plan with Web App deployment.

https://www.hostg.xyz/aff_c?offer_id=1331&aff_id=137417&url_id=5995&source=web_templates_library

Get Atlas & Prepare Your Project

Clone Atlas from GitHub

git clone https://github.com/salhiworks/atlas-car-rental-saas.git

Install dependencies

cd atlas-car-rental-saas

npm ci

Create & Connect Supabase

Create your Supabase project

Create a new Supabase project for Atlas and choose a region close to your users.

Open Supabase

https://supabase.com/dashboard

Keep your database password somewhere secure — the CLI may ask for it when connecting to your database.

Link Atlas and apply the database

npx supabase login

npx supabase projects list

npx supabase link --project-ref <your-project-ref>

npx supabase db push

Deploy Atlas Edge Functions

npx supabase functions deploy

Add your Supabase environment variables

cp .env.example .env.local

VITE_SUPABASE_URL VITE_SUPABASE_ANON_KEY

VITE_SUPABASE_URL

Project URL

VITE_SUPABASE_ANON_KEY

Anon (public) key

Get these values from Supabase

Open API Settings

https://supabase.com/dashboard/project/_/settings/api

Security

Use the public/anon key here, never the service_role key. Never put server secrets in VITE_ variables.

Configure local Auth URLs

Authentication URL Configuration

Local Auth URLs

http://localhost:5173 http://localhost:5173/**

http://localhost:5173

Site URL

http://localhost:5173/**

Redirect URL

If Vite starts on a different port, use that port instead.

You'll switch the Site URL to your live domain in Step 4. You can keep localhost as an allowed redirect for local development.

Start Atlas locally

npm run dev

Open the local URL shown by Vite, create your Atlas account, and confirm your email if prompted. Sign in and make sure your Atlas workspace loads correctly.

Configure & Customize Atlas

Configure your agency settings

Atlas workspace Settings

General — agency name, legal name, tax ID, contact details Regional — currency, time zone, and locale Branding — upload your agency logo Contract terms — your rental contract wording and tax rates

These are your agency's own details — product branding is handled separately in the next step.

Rebrand Atlas

Atlas product branding is centralized in this file.

src lib config brand.ts

Rebrand & Customize Prompt

Ask Claude Code to inspect Atlas's branding file and apply a scoped product rebrand.

Inspect src/lib/config/brand.ts first — this is the centralized source of Atlas's product identity. Rebrand the product as {{BUSINESS_NAME}}. Tagline: {{TAGLINE}} Update only the product-facing fields there (name, fullName, tagline) and wherever they're rendered for display. Do not search-and-replace "Atlas" across the repository. Do not touch creator, creatorUrl, or attribution — those represent creator/source identity, not the product name. Do not change agency-specific data; that lives in Atlas Settings, not this file. Do not modify Supabase migrations, RLS policies, authorization logic, or rental/payment business logic as part of this rebrand. Preserve the existing architecture and backend behavior.

Your business or product name

e.g. Fleetly, Renta, your own brand

Optional tagline

e.g. Modern fleet management

Keep the repository's MIT LICENSE copyright notice.

Important

For a rebrand, keep changes to branding/configuration only. Don't modify migrations, RLS, authorization, payments, or rental logic.

Test your changes locally

If Atlas isn't already running:

npm run dev

Sign in and verify your agency settings, product branding, and any pages you changed.

Deploy Atlas on Hostinger

Publish Atlas to your GitHub repository

Create GitHub Repository

Create an empty repository — no README, license, or .gitignore.

https://github.com/new

Publish Atlas to GitHub

Let Claude Code safely publish your current Atlas project to the repository you just created.

Inspect this Atlas project first — don't change anything yet. Confirm you're in the Atlas project root, then check: git status, the current branch name, existing git remotes, and .gitignore. Confirm .env.local and any other local environment/secret files are covered by .gitignore before doing anything else. Do not modify any application code as part of this task. Protect secrets: before staging anything, make sure .env.local, other environment files with real values, node_modules, and any ignored local build/cache artifacts cannot be committed. If something sensitive is unexpectedly trackable, fix only the minimal .gitignore rule needed to exclude it — don't delete my local files, and don't print any secret values back to me. Handle the existing remote safely: if origin still points to the original salhiworks/atlas-car-rental-saas repository, rename it to upstream and add {{GITHUB_REPO_URL}} as the new origin. If the remotes are already set up differently, inspect them and do the safest equivalent — never create duplicate remotes. Preserve history: don't create an orphan branch, rewrite history, squash commits, or force-push. Commit only if there are real uncommitted changes to publish, staging only safe project files, using the message "Prepare Atlas for deployment". If there's nothing to commit, don't create an empty commit — just continue. Publish: push the actual current branch (don't assume it's main) to {{GITHUB_REPO_URL}} and set up normal upstream tracking. Never use --force. If GitHub authentication is needed, or the remote repository already has conflicting history, stop and tell me exactly what to do instead of trying a destructive workaround. When you're done, tell me concisely: which repository is now origin, which branch was published, whether a new commit was needed, whether the push succeeded, and confirm no local secret files were published. Don't dump git logs.

GitHub Repository URL

https://github.com/your-username/your-repository.git

Connect Atlas to Hostinger

Open Hostinger

Deploy the Atlas repository you just published.

https://www.hostg.xyz/aff_c?offer_id=1331&aff_id=137417&url_id=5995&source=web_templates_library

Websites Add Website Deploy Web App

Choose the final domain for Atlas Select Import Git Repository and connect your GitHub account Select the repository you just published

Configure and deploy Atlas

Hostinger detects Atlas as a Vite/React app and pre-fills these build settings — confirm them:

Framework preset: React / Vite (auto-detected) Build command: npm run build Output directory: dist

Add these two values in Hostinger's Environment Variables step, using the same Supabase project from Step 2:

VITE_SUPABASE_URL VITE_SUPABASE_ANON_KEY

VITE_SUPABASE_URL

Project URL

VITE_SUPABASE_ANON_KEY

Anon (public) key

Get these values from Supabase

Open API Settings

https://supabase.com/dashboard/project/_/settings/api

Security

Use the public/anon key here, never the service_role key.

Start the deployment once these are confirmed — Hostinger builds and publishes the connected repository.

Future pushes to this branch redeploy Atlas automatically.

Update Supabase Auth for your live domain

Authentication URL Configuration

Production Auth URLs

https://yourdomain.com https://yourdomain.com/auth/callback https://yourdomain.com/accept-invite https://yourdomain.com/auth/reset-password https://yourdomain.com/confirm-email

https://yourdomain.com

Site URL

https://yourdomain.com/auth/callback

Redirect URL

https://yourdomain.com/accept-invite

Redirect URL

https://yourdomain.com/auth/reset-password

Redirect URL

https://yourdomain.com/confirm-email

Redirect URL

You can keep the localhost redirect for local development.

Verify your live Atlas

Atlas loads over HTTPS

Sign up or sign in and confirm Auth stays on your live domain

Open your workspace and a protected page such as Vehicles

Refresh a deep URL and confirm it doesn't return a 404

Make Atlas Your Own

Choose your next path

What You Can Do With Atlas

Run Atlas for a rental agency

Use your deployed Atlas instance to manage a real rental business.

Customize Atlas for clients

Rebrand and configure Atlas for rental agencies as a service.

Turn Atlas into your own SaaS

Build your own product on top of Atlas's multi-tenant foundation.

Optional integrations

Stripe subscriptions

Add recurring subscription billing if you're turning Atlas into a paid SaaS.

Set Up Stripe Subscriptions

Profit Studio's Stripe + Supabase guide covers this end to end.

/video/add-stripe-subscriptions-supabase

GPS tracking

Connect a supported GPS provider later if your use case needs live vehicle tracking.

Automatic invitation emails

Add a transactional email provider later if you want team invitations sent automatically.

Atlas core works without these optional integrations.