create table if not exists team (
id bigint generated by default as identity primary key,
name text not null,
designation text,
email text,
phone text,
linkedin text,
bio text,
photo_url text,
active boolean default true,
sort_order int default 99,
created_at timestamptz default now()
);
alter table team enable row level security;
drop policy if exists "Public read team" on team;
drop policy if exists "Public write team" on team;
create policy "Public read team" on team for select to anon using (true);
create policy "Public insert team" on team for insert to anon with check (true);
create policy "Public update team" on team for update to anon using (true);
create policy "Public delete team" on team for delete to anon using (true);
-- Storage bucket for photos:
insert into storage.buckets (id,name,public) values ('team-photos','team-photos',true) on conflict do nothing;
Your latest activity
Edit, feature or delete โ changes are instant on the website
| Property | Price | Yield | Growth | Badge | Status | Actions |
|---|---|---|---|---|---|---|
| Loading properties... | ||||||
Text and video testimonials โ all displayed live on the website
| Client | Video | Quote Preview | Active | Actions |
|---|---|---|---|---|
| Loading testimonials... | ||||
Goes live on the website immediately after saving
Text testimonials and video testimonials are both supported
Add, edit and manage team member profiles shown on the website.
create table if not exists team (id bigint generated by default as identity primary key, name text not null, designation text, email text, phone text, linkedin text, bio text, photo_url text, active boolean default true, sort_order int default 99, created_at timestamptz default now());
alter table team enable row level security;
create policy "Public read team" on team for select to anon using (true);
create policy "Public insert team" on team for insert to anon with check (true);
create policy "Public update team" on team for update to anon using (true);
create policy "Public delete team" on team for delete to anon using (true);
insert into storage.buckets (id,name,public) values ('team-photos','team-photos',true) on conflict do nothing;