diff --git a/README.md b/README.md
index 05d264ae..b8ffac87 100644
--- a/README.md
+++ b/README.md
@@ -52,6 +52,7 @@ Everything you need to get started for a SaaS company:
- User Dashboard with user profile, user settings, update email/password, billing, and more.
- Subscriptions powered by Stripe Checkout
- Pricing page
+- Contact-us form
- Billing portal: self serve to change card, upgrade, cancel, or download receipts
- Onboarding flow after signup: collect user data, and select a payment plan
- Style toolkit: theming and UI components
diff --git a/database_migration.sql b/database_migration.sql
index 83fdf8b7..d78d6f15 100644
--- a/database_migration.sql
+++ b/database_migration.sql
@@ -31,6 +31,20 @@ create table stripe_customers (
);
alter table stripe_customers enable row level security;
+-- Create a table for "Contact Us" form submissions
+-- Limit RLS policies -- only server side access
+create table contact_requests (
+ id uuid primary key default gen_random_uuid(),
+ updated_at timestamp with time zone,
+ first_name text,
+ last_name text,
+ email text,
+ phone text,
+ company_name text,
+ message_body text
+);
+alter table contact_requests enable row level security;
+
-- This trigger automatically creates a profile entry when a new user signs up via Supabase Auth.
-- See https://supabase.com/docs/guides/auth/managing-user-data#using-triggers for more details.
create function public.handle_new_user()
diff --git a/src/DatabaseDefinitions.ts b/src/DatabaseDefinitions.ts
index 5feb52fd..659e8e1f 100644
--- a/src/DatabaseDefinitions.ts
+++ b/src/DatabaseDefinitions.ts
@@ -9,6 +9,39 @@ export type Json =
export interface Database {
public: {
Tables: {
+ contact_requests: {
+ Row: {
+ company_name: string | null
+ email: string | null
+ first_name: string | null
+ id: string
+ last_name: string | null
+ message_body: string | null
+ phone: string | null
+ updated_at: Date | null
+ }
+ Insert: {
+ company_name?: string | null
+ email?: string | null
+ first_name?: string | null
+ id?: string
+ last_name?: string | null
+ message_body?: string | null
+ phone?: string | null
+ updated_at?: Date | null
+ }
+ Update: {
+ company_name?: string | null
+ email?: string | null
+ first_name?: string | null
+ id?: string
+ last_name?: string | null
+ message_body?: string | null
+ phone?: string | null
+ updated_at?: Date | null
+ }
+ Relationships: []
+ }
profiles: {
Row: {
avatar_url: string | null
diff --git a/src/routes/(marketing)/+layout.svelte b/src/routes/(marketing)/+layout.svelte
index 73c798c1..a522c77b 100644
--- a/src/routes/(marketing)/+layout.svelte
+++ b/src/routes/(marketing)/+layout.svelte
@@ -71,6 +71,7 @@
Overview
Pricing
Blog
+ Contact Us
Github