← Stories · Brief

Supabase developer documentation update

supabase-changelog engineering-technology May 29, 2026 source →
Claims
210
Domain
engineering-technology
Reading time
11 min
Record
JavaScriptClient Library

Claims from this story

Every atomic assertion extracted from the underlying record, ranked by evidence strength.

`supabase-js` is an isomorphic JavaScript library.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` can interact with a Postgres database.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` can listen to database changes.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` can invoke Deno Edge Functions.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` can build login and user management functionality.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` can manage large files.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` can be installed via npm.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` can be installed via CDN.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` can be used in the Deno runtime via JSR.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` uses the Data API to query Postgres data.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` uses the Data API to mutate Postgres data.

paraphrasestatedengineering-technologyMay 29, 2026

Data API roles require permissions to access tables.

paraphrasestatedengineering-technologyMay 29, 2026

Data API roles require permissions to access functions.

paraphrasestatedengineering-technologyMay 29, 2026

Permissions for Data API roles can be granted via Data API integrations settings.

paraphrasestatedengineering-technologyMay 29, 2026

Permissions for Data API roles can be granted via SQL.

paraphrasestatedengineering-technologyMay 29, 2026

Row Level Security (RLS) should be enabled for tables when granting client role access.

paraphrasestatedengineering-technologyMay 29, 2026

Policies should be created for each role's allowed operations.

paraphrasestatedengineering-technologyMay 29, 2026

The `anon` role can be granted `select` permission on tables.

paraphrasestatedengineering-technologyMay 29, 2026

The `authenticated` role can be granted `select` permission on tables.

paraphrasestatedengineering-technologyMay 29, 2026

The `authenticated` role can be granted `insert` permission on tables.

paraphrasestatedengineering-technologyMay 29, 2026

The `authenticated` role can be granted `update` permission on tables.

paraphrasestatedengineering-technologyMay 29, 2026

The `authenticated` role can be granted `delete` permission on tables.

paraphrasestatedengineering-technologyMay 29, 2026

The `service_role` can be granted `all` permissions on tables.

paraphrasestatedengineering-technologyMay 29, 2026

The `authenticated` role can be granted `execute` permission on functions.

paraphrasestatedengineering-technologyMay 29, 2026

The `service_role` can be granted `execute` permission on functions.

paraphrasestatedengineering-technologyMay 29, 2026

The `createClient` function initializes the Supabase client.

paraphrasestatedengineering-technologyMay 29, 2026

The `createClient` function requires a `supabaseUrl` parameter of type string.

paraphrasestatedengineering-technologyMay 29, 2026

The `createClient` function requires a `supabaseKey` parameter of type string.

paraphrasestatedengineering-technologyMay 29, 2026

The `createClient` function accepts an optional `options` parameter of type `SupabaseClientOptions`.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` supports TypeScript.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` TypeScript support includes type inference.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` TypeScript support includes autocompletion.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` TypeScript support includes type-safe queries.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` detects `not null` constraints for TypeScript typing.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` detects generated columns for TypeScript typing.

paraphrasestatedengineering-technologyMay 29, 2026

Nullable columns in `supabase-js` are typed as `T | null`.

paraphrasestatedengineering-technologyMay 29, 2026

Generated columns in `supabase-js` show a type error when inserted into.

paraphrasestatedengineering-technologyMay 29, 2026

`supabase-js` detects relationships between tables for TypeScript typing.

paraphrasestatedengineering-technologyMay 29, 2026

One-to-many relationships in `supabase-js` are typed as `T[]`.

paraphrasestatedengineering-technologyMay 29, 2026

Many-to-one relationships in `supabase-js` are typed as `T | null`.

paraphrasestatedengineering-technologyMay 29, 2026

Supabase CLI can generate TypeScript types for `supabase-js`.

paraphrasestatedengineering-technologyMay 29, 2026

TypeScript types for `supabase-js` can be generated from the Supabase dashboard.

paraphrasestatedengineering-technologyMay 29, 2026

Generated TypeScript types for `supabase-js` are based on the database schema.

paraphrasestatedengineering-technologyMay 29, 2026

The `overrideTypes` method can partially override the type of returned data.

paraphrasestatedengineering-technologyMay 29, 2026

The `overrideTypes` method can completely replace the type of returned data.

paraphrasestatedengineering-technologyMay 29, 2026

The `select()` method performs a SELECT query on a table or view.

paraphrasestatedengineering-technologyMay 29, 2026

The `select()` method's `count` option returns the total number of rows that match filters.

paraphrasestatedengineering-technologyMay 29, 2026

Supabase projects return a maximum of 1,000 rows by default.

paraphrasestatedengineering-technologyMay 29, 2026

The default maximum row limit of 1,000 can be changed in project's API settings.

paraphrasestatedengineering-technologyMay 29, 2026

The `range()` method can be used for pagination.

paraphrasestatedengineering-technologyMay 29, 2026

The `select()` method can be combined with filters.

paraphrasestatedengineering-technologyMay 29, 2026

The `select()` method can be combined with modifiers.

paraphrasestatedengineering-technologyMay 29, 2026

`apikey` is a reserved keyword in the Supabase Platform and should be avoided as a column name.

paraphrasestatedengineering-technologyMay 29, 2026

The `select()` method accepts an optional `columns` parameter.

paraphrasestatedengineering-technologyMay 29, 2026

The `select()` method accepts an optional `options` parameter.

paraphrasestatedengineering-technologyMay 29, 2026

The `insert()` method performs an INSERT query on a table or view.

paraphrasestatedengineering-technologyMay 29, 2026

By default, the `insert()` method does not return inserted rows.

paraphrasestatedengineering-technologyMay 29, 2026

The `insert()` method can return inserted rows by chaining with `.select()`.

paraphrasestatedengineering-technologyMay 29, 2026

The `insert()` method requires a `values` parameter (object or array).

paraphrasestatedengineering-technologyMay 29, 2026

Supabase provides a JavaScript client library named `supabase-js`.

paraphrasestatedengineering-technologyMay 29, 2026