Skip to content

Repository files navigation

myclaw

Landing page and signup flow for deploying a hosted OpenClaw AI assistant instance in under a minute.

What it does

This is a Next.js marketing/deploy site for "OpenClaw" (an AI assistant product). It:

  • Shows a landing page (hero, comparison table, use cases) pitching one-click OpenClaw deployment.
  • Lets a visitor pick a default AI model (Claude Opus 4.5, GPT-5.2, or Gemini 3 Flash) and a messaging channel to connect (Telegram is live; Discord and WhatsApp are marked "coming soon").
  • Authenticates users via Supabase Auth (Google OAuth), and persists each user's chosen model/channel/status to a deployments table in Supabase, protected by row-level security so users can only read/write their own row (see supabase/migrations/001_initial.sql).
  • Exposes a /api/checkout route that creates a Stripe Checkout session for a fixed $49 "Deploy OpenClaw" payment, redirecting to /dashboard on success.

There is no backend deployment automation in this repo yet — it's the frontend/signup and payment layer that records what a user wants deployed (model + channel) and takes payment; actually provisioning the OpenClaw instance happens elsewhere.

Tech stack

  • Framework: Next.js 15 (App Router, Turbopack dev server), React 19, TypeScript
  • Styling/animation: Tailwind CSS 3, Framer Motion
  • Auth & data: Supabase (@supabase/ssr, @supabase/supabase-js) — Google OAuth, Postgres table with RLS
  • Payments: Stripe (stripe SDK, Checkout Sessions)
  • Lint: ESLint (eslint-config-next)

Project structure

app/
  page.tsx              # Landing page composition
  layout.tsx
  api/checkout/route.ts # Stripe Checkout session creation
  auth/callback/         # Supabase OAuth callback handler
components/
  Hero.tsx, Header.tsx, Footer.tsx, Comparison.tsx, UseCases.tsx
  DeployCard.tsx         # Model + channel picker, Supabase auth/save logic
  DeployButton.tsx
  ModelSelection.tsx, ChannelSelection.tsx  # standalone selection sections
lib/supabase/           # Supabase client/server/middleware helpers
middleware.ts           # Supabase session refresh middleware
supabase/migrations/    # SQL schema (deployments table + RLS policies)

Getting started

  1. Install dependencies: npm install
  2. Copy .env.example to .env.local and fill in Supabase project values (NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_ANON_KEY); add STRIPE_SECRET_KEY and NEXT_PUBLIC_APP_URL for the checkout route to work.
  3. Apply the schema in supabase/migrations/001_initial.sql to your Supabase project.
  4. Run the dev server: npm run dev

About

Landing page and signup flow for one-click deployment of a hosted OpenClaw AI assistant instance

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages