Copy .env.template
to .env
.
Fill environment variables ULTRA_PUBLIC_SUPABASE_URL
, ULTRA_PUBLIC_SUPABASE_ANON_KEY
at .env
values from https://supabase.com/dashboard/project/_/settings/database.
ULTRA_
prefix means variables will be available at ultra
frontend.
Supabase URL & anon key for .env
configuration:
https://supabase.com/dashboard/project/_/settings/api
Get user id from schema auth
, table users
, column id
. Id example: ccdcd9a1-2df3-4cdf-8298-a37cd209dd0d
.
Example query to add claim:
SELECT set_claim('ccdcd9a1-2df3-4cdf-8298-a37cd209dd0d'::uuid, 'claim_edit_all_content', '1');
User must relogin to use updated permissions.
Function set_claim
installed from custom claims project.
claim_edit_all_content
- edit content created by other usersclaim_delete_all_content
- delete content created by other usersclaim_edit_all_profiles
- edit other users profilesclaim_publish
- publish and unpublish content rows (make visible for guests).
Generate access token at https://supabase.com/dashboard/account/tokens, then
pnpm exec supabase login
Then enter access token. Local system keyring password may be asked then.
Then go to your project subase settings -> Project settings -> general -> copy "<Reference_ID>"
and run
pnpm exec supabase link --project-ref=<Reference_ID>
If error cannot read config in ...: open supabase/config.toml
run pnpm exec supabase init
first.
pnpm install
At first go to your project page at Supabase, choose "SQL editor" on left menu and init schema with schema you want to test, for example demo.sql
.
pnpm run db:dump:data
pnpm run db:dump:schema
pnpm run db:dump:migration
or just
pnpm run db:dump
`supabase db dump` doesn't dump triggers | issue #1726 | cli
deno task run db-pg-dump
pnpm exec supabase gen types typescript --linked > src/db/supabase-types-generated.ts
See
Execute pnpm run db:gen:json-schema
.
After schema change on remote database:
pnpm exec supabase db pull
If scipt asks Update remote migration history table? [Y/n]
choose n
to not rename
New migration supabase/migrations/NNNNNNNNNNNNNN_remote_schema.sql
will be created. Rename remote_schema
to more meaningful name.
Then list migations with new one:
pnpm exec supabase migration list
If migration not marked remote as applied, then
pnpm exec supabase migration repair 202XXXXXXXXXX --status applied
when 202XXXXXXXXXX
is local migration timestamp
Related demo projects: