Montara Pass
Clients

Marketing site

The public website, deployed to Cloudflare Workers.

apps/web is the public site. It runs on vinext, the Next.js App Router API on Vite, and is deployed as a Cloudflare Worker. It does not call the API.

RouteContent
/Home: security, features, self-hosting, pricing and FAQ
/contactA contact form
/privacy, /termsLegal pages with a table of contents

The contact form is not wired up

The contact form validates its fields and then only simulates a submission; it sends nothing yet. The header's Log in button links to the web app at https://app.montarapass.com.

The site follows the system theme and has a light, dark and system switch in the header.

pnpm dev:web                                 # http://localhost:5174
pnpm --filter @montara-pass/web run build
pnpm --filter @montara-pass/web run start    # serve the build locally

Deploy

The Worker is described in apps/web/cloudflare.config.ts: its name, its entrypoint, the compatibility date, the ASSETS binding and, under domains, the custom domains it is published to. Those domains must belong to zones on the Cloudflare account that deploys. There is no wrangler.jsonc.

pnpm --filter @montara-pass/web exec cf auth login
pnpm deploy:web

pnpm deploy:web builds and then deploys with Cloudflare's cf CLI. In CI the same command runs with CLOUDFLARE_API_TOKEN and CLOUDFLARE_ACCOUNT_ID; see Releases.

cf and @cloudflare/vite-plugin 2 are beta releases.

On this page