Commit Graph
3070 Commits
Author SHA1 Message Date
Sean Oliver 07fe32ace2 feat: implement inline expandable TableQuickstart for new homepage
- Created new inline TableQuickstart component with expandable card pattern
- Added feature flag support (control, ai, templates variants)
- Implemented smooth Framer Motion animations for expand/collapse
- Ported AI generation and template selection from legacy components
- Integrated with GettingStartedSection using PostHog feature flag
- Organized components into inline/ and legacy/ folders for clean separation
- Maintains all existing functionality while providing better UX

Key improvements:
- No navigation away from Getting Started section
- Progressive disclosure with smooth animations
- Supports A/B testing with feature flag variants
- Reuses existing API endpoints and logic
2025-09-19 10:15:11 -07:00
Sean Oliver 73f352c847 lint 2025-09-19 09:44:03 -07:00
Sean Oliver 223a6df33c comment to docs RE max duration 2025-09-19 09:22:53 -07:00
Sean Oliver 6a63f8ae1a fix: remove default values from primary keys and add table descriptions
- Primary key fields now don't have default values set in the table editor
- Table descriptions are now populated from AI/template rationale
- Updated AI prompt to not generate default values for primary keys
- Updated quickstartStore to pass rationale field through
2025-09-19 09:16:29 -07:00
Sean Oliver 6d13c3f176 fix: change ip_address type from inet to varchar for TypeScript compatibility 2025-09-18 20:04:19 -07:00
Sean Oliver 0e0179fef1 feat: ensure all template options have exactly 3 tables
- Added order_items table to E-commerce template (links orders and products)
- Added comments table to Blog template (for reader engagement)
- Added team_members table to Todo List/Project template (for collaboration)
- Added sessions table to Analytics template (for tracking user engagement)
- All templates now consistently show 3 tables for better UX consistency
2025-09-18 20:03:14 -07:00
Sean Oliver 22e4a44753 fix: improve hover border visibility in dark mode
- Changed hover:border-foreground/20 to hover:border-foreground-muted across all components
- Fixed focus state border in AiPromptInput to use foreground-muted
- Ensures consistent hover effects that remain visible in both light and dark modes
2025-09-18 19:59:27 -07:00
Sean Oliver da21ad079f cleanup 2025-09-18 19:55:06 -07:00
Sean Oliver fa35501715 cleanup unused constants 2025-09-18 19:50:26 -07:00
Sean Oliver cce34fd5b5 fix: properly detect primary keys regardless of field type
- Changed useQuickstartData to respect isPrimary flag from AI/templates
- Always mark 'id' fields as primary key regardless of data type
- Fixes issue where text-type id fields weren't marked as primary
2025-09-18 19:38:05 -07:00
Sean Oliver 2372295edf fix: ensure AI-generated tables always mark id fields as primary keys
- Updated convertAISchemaToTableSuggestions to always set isPrimary: true for id fields
- Updated AI prompt to explicitly instruct marking id fields as primary
- Ensures consistency with template behavior when reaching table editor
2025-09-18 19:32:22 -07:00
Sean Oliver d34cb5754d feat: Redesign Table Quickstart UI with modern, cohesive design (#38837)
Squash merging UI redesign into AI generation branch
2025-09-18 19:23:02 -07:00
Sean Oliver ed05cd5221 refactor: Remove unused projectType field from AI schema generation 2025-09-18 15:13:38 -07:00
Sean Oliver 7827bef36b feat: Add AI-powered table schema generation for Table Quickstart
- Add API endpoint for generating database schemas using OpenAI
- Integrate AI generation into Table Quickstart frontend
- Support 2-3 table generation based on user prompts
- Add proper error handling with toast notifications
- Whitelist endpoint in middleware for hosted environment
2025-09-18 15:11:10 -07:00
Sean Oliver ec4bc204b1 feat: Add TableQuickstart experiment for onboarding flow
Implements a growth engineering experiment to improve new user onboarding
by providing AI-powered and template-based table creation options.

Features:
- AI prompt interface for describing app requirements
- Pre-built templates for common app types (social media, e-commerce, blog, etc.)
- Seamless integration with existing table editor
- State management using Valtio for reliable data flow
- PostHog feature flag controlled (tableQuickstart)

Technical implementation:
- Uses Valtio proxy-based state management instead of sessionStorage
- Properly handles quickstart flow to prevent race conditions
- Integrates with TableEditor via useQuickstartData hook
- Cleans up state appropriately to prevent panel re-opening issues
- Full TypeScript support with proper type definitions

The experiment aims to reduce time-to-value for new users by providing
smart defaults and reducing the SQL knowledge barrier for initial setup.
2025-09-17 16:01:40 -07:00
Charis 2e6a7093d6 refactor: make MCP docs url configurable (#38763) 2025-09-17 12:25:31 -04:00
Matt Rossman 2deedf479b chore: untrack next-env.d.ts (#38792)
* chore: untrack `next-env.d.ts`

* chore: `next typegen` in pretypecheck for docs, studio, www
2025-09-17 12:01:41 -04:00
Riccardo BusettiandJoshen Lim ff7f5021f4 feat(replication): Show warning when publication is not found (#38786)
* feat(replication): Show warning when publication is not found

* Fix

* Pretty ✨

* Smol tweaks

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2025-09-17 23:49:51 +08:00
Jordi EnricandCharis c75bb1b60d Auth Report tests and improvements (#38550)
* move to new ReportConfig

* separate types

* add auth report config

* add auth report transofmration test

* add fetchlogs util for reports

* rm auth-charts

* rm auth-report-query

* rm dupped code

* simplify upsell compo

* rm unnecessary hook

* use upsell in database report instead of old component

* rip ReportChart you wont be missed

* more tests

* rm unnecessary import

* Fix SQL in active users

* support hide inside report chart component

* add max bar size to avoid having big ass bars when theres little data

* fix incorrect timestamp key passed on to fillTimeseries

* add tooltip to auth report

* fix bug with timestamp key inside tooltips

* add report settings

* rm debugging check

* Update apps/studio/data/reports/v2/auth.config.ts

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

* safely access result

* fix sign in latency query

* add toggleable attributes

* handle toggleable attributes

* pass on hideHighlightedValue

* fix signup latency

* pass hideHighlighted

* report chart pass on hide highlighted value

* cleanup finalChartData

* simplify tests, use timestamp for everything

* fix test

* rm dupped attribute

* add tooltip to auth errors

* Update apps/studio/data/reports/v2/auth.config.ts

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

* Update apps/studio/components/ui/Charts/ComposedChart.tsx

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

* prettify

---------

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2025-09-17 17:41:10 +02:00
kemal.earth 3a9c377ac3 feat(studio): add query perf symlink to reports (#38783)
* feat: add query perf symlink to reports

* nit: remove preserveQueryParams from QP link
2025-09-17 16:25:25 +01:00
kemal.earth cd07289476 fix(studio): query perf update label formatting and column name (#38778)
* chore: update rows read column label

* fix: toLocaleString for grid numbers
2025-09-17 16:24:55 +01:00
Jordi Enric 506b20734f Add sample rate to fetcher (#38785)
* add sample rate to fetcher

* 20

* default to always capture and base sample rate of 20%

* rm unnecessray type
2025-09-17 14:39:35 +00:00
Joshen Lim 1160f89b70 Address various console warnings (#38789) 2025-09-17 22:36:07 +08:00
Charis a46c31f551 chore: set min release age for pnpm (#38787)
* chore: bump pnpm version to 10.16.1

* chore: set min release age for pnpm

* chore: bump pnpm to 10.16.1 in dockerfile
2025-09-17 10:34:33 -04:00
Joshen LimandCharis 3ad683da81 Contextual error for foreign tables in table editor (#38736)
* Contextual error for foreign tables in table editor

* Update apps/studio/components/grid/components/grid/Grid.tsx

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

---------

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2025-09-17 19:59:27 +08:00
Jordi EnricandCharis 3d55164563 propagate sentry issue id to form (#38714)
* propagate sentry issue id to form

* fix, add to payload

* empty

* name fix

* add test button

* rm thrower

* Update apps/studio/components/ui/GlobalErrorBoundaryState.tsx

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

---------

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2025-09-17 12:59:07 +02:00
Jordi EnricandCharis 4236f8781e add status code to tags instead of context (#38706)
* add attachment with error for better filtering

* fix type error

* move status code to tag

* skip 4xxs in sentry

* Update apps/studio/data/permissions/permissions-query.ts

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

* Update apps/studio/data/permissions/permissions-query.ts

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

---------

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2025-09-17 11:30:57 +02:00
Jordi Enric 08960d0f48 FE-1856: fix shared api report filters (#38775)
* fix filters

* handle numbers
2025-09-17 11:19:16 +02:00
Joshen LimandJordi Enric 11b6f77db4 Support for projects pagination (Part 2) (#38654)
* Create OrganizationProjectSelector which handles infinite scrolling in Popover

* Use OrganizationProjectSelector in InviteMemberButton

* Refactor OrganizationProjectSelector to optimize UX

* Use OrganizationProjectSelector in SupportFormV2

* Update apps/studio/data/projects/projects-infinite-query.ts

* Nit

---------

Co-authored-by: Jordi Enric <37541088+jordienr@users.noreply.github.com>
2025-09-17 16:51:14 +08:00
Joshen Lim f2ba7f0270 Add self-remediation for orphan prefixes and refactor delete objects to be a singular request (#38753)
* Add self-remediation for orphan prefixes and refactor delete objects to be a singular request

* Update comment

* Update delete prefix

* Smol fix
2025-09-17 14:07:51 +08:00
Charis 283b125369 fix: failing type errors in build (#38761)
* fix(www): types for awaited params

* fix(docs): no extraneous exports from route page

* fix(studio): api handler types, no non-handlers allowed in pages
2025-09-17 15:55:38 +10:00
Jonathan Summers-Muir 872a372119 fix: Debounce filter application in UnifiedLogs (#37275)
Debounce filter application in UnifiedLogs

Introduced debounced filter application using useDebounce to reduce excessive API calls when users quickly change filters in UnifiedLogs. This improves performance and user experience by batching rapid filter changes.
2025-09-17 11:45:08 +08:00
Han QiaoandCharis 77561e8e09 chore: replace branch id with branch ref (#38735)
* chore: remove unused mutation to disable branching

* chore: use branch ref in delete mutation

* chore: use branch ref in diff query

* chore: use branch ref in push mutation

* chore: use branch ref in detail query

* chore: use branch ref in update mutation

* Update apps/studio/data/branches/branch-query.ts

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>

---------

Co-authored-by: Charis <26616127+charislam@users.noreply.github.com>
2025-09-17 10:31:01 +08:00
Sean Oliver 03f381cffa fix: remove PostHog wildcard domain from CSP (#38759)
Remove the overly permissive *.posthog.com wildcard from CSP configuration.
The PostHog reverse proxy at ph.supabase.com/ph.supabase.green handles all
necessary PostHog endpoints including /flags for feature flags.

This improves security by only allowing our controlled reverse proxy domains
rather than the entire PostHog infrastructure.
2025-09-16 15:48:56 -07:00
hallidayo 8b63757187 fix: studio storage settings link (#38133)
check on settings link in storage
2025-09-16 20:50:03 +00:00
Charis a054caea9b chore: turn on typechecking on prod build (#38715)
It's possible for individual PRs to pass typechecking, while the merge
result fails it. To prevent errors from getting into production, we can
fail the prod build if typecheck fails. Typecheck is still ignored on
preview builds for efficiency, since those are blocked on the GitHub
typecheck Action.
2025-09-16 13:12:12 -04:00
Chris StocktonandChris Stockton 9907fb25f4 fix(ui/auth-sessions): always show refresh token reuse interval (#38723)
* fix(ui/auth-sessions): always show refresh token reuse interval

The reuse interval input was previously hidden when rotation was disabled. This
caused confusion, since the interval still applies regardless of rotation
setting. Allow zero values for reuse interval as it is supported in auth server
and is used by some projects.

* Always render SECURITY_REFRESH_TOKEN_REUSE_INTERVAL field.
* Removed .positive() schema check to allow 0 values
* Improves alignment between dashboard UI and backend behavior

* chore: prettier

---------

Co-authored-by: Chris Stockton <chris.stockton@supabase.io>
2025-09-16 09:20:33 -07:00
Joshen Lim 87ab63a1d7 Chore/optimize auth users UI query (#38739)
* only select required columns, instead of *

* Use CTE, run agg only within the results block
2025-09-16 22:58:41 +08:00
Alaister YoungandJoshen Lim c0da4fc689 chore: add custom content provider label (#38745)
* chore: add custom content provider label

* Remove lowercase for desc in ProjectCard

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2025-09-16 22:06:57 +08:00
kemal.earth bc2dac6d68 feat(studio): add columns and update labels for query performance (#38744)
* feat: change calls label to count

This changes the column title for calls to count for clarity

* feat: add cache hit rate col and number formatting

Adds a cache hit rate column for each query as well as tidies up some number formatting.

* feat: add styling for 0 numbers

This makes anything marked as 0 feint in the table for easier parsing.

* chore: remove debug console log

* fix: silly next-env again

* nit: remove avg rows col

* nit: add toFixed to cache hit rate

* feat: add  tooltip for role column
2025-09-16 13:43:43 +01:00
Jordi Enric 83122eb4c6 fix query performance links (#38738)
* fix links

* fix links

* rm nextenv

* fix formatting changes
2025-09-16 13:58:55 +02:00
Joshen Lim d46525eac1 Chore/swap use check permissions with use async check project permissions part 8 (Season Finale) (#38619)
* Update perms checking in audit logs

* Deprecate useCheckPermissions, useIsPermissionsLoaded and useCheckProjectPermissions as they're no longer used

* Rename useAsyncCheckProjectPermissions to useAsyncCheckPermissions

* Fix TS
2025-09-16 17:05:57 +08:00
Joshen Lim 466760099d Support opening table rows for foreign tables in side panel (read only) (#38699)
* Support opening table rows for foreign tables in side panel (read only)

* Fix TS
2025-09-16 11:54:03 +08:00
Joshen Lim 57a10f2f6d Fix project card provider undefined (#38705) 2025-09-16 11:24:53 +08:00
Alaister Young 7f0fbe378d chore: add compute price to enabled features (#38696) 2025-09-16 03:13:34 +00:00
Charis 0c3377975a fix: handle undefined count when fetching table rows (#38727)
fix: handle undefined count when fetchint table rows

count can be undefined in the return from fetching table rows (it uses
executeSqlQuery under the hood which has no type safety) so we need to
deal with that case
2025-09-16 11:04:45 +08:00
Saxon FletcherandJoshen Lim 30e73ee44d Home New: Report (#38341)
* new home top

* advisors

* fix ts

* add report section

* add report

* Nit refactor

* refactor row

* prevent adding snippet twice

---------

Co-authored-by: Joshen Lim <joshenlimek@gmail.com>
2025-09-16 11:00:25 +08:00
Sean Oliver bd1b7bcf95 fix: add PostHog external URL to CSP for feature flags support (#38717)
PostHog feature flags and other advanced features (toolbar, session replay)
require direct connections to *.posthog.com endpoints, even when using our
proxy server for main event ingestion. This adds the necessary CSP rules.
2025-09-15 14:02:47 -07:00
Joshen Lim 84e3f5041e Fix missing app frameworks in connect modal (#38712)
* Fix missing app frameworks in connect modal

* Clean up

* More clena up

* Deprecate ConnectTabCustomContent
2025-09-15 15:14:11 +00:00
Terry Sutton e4e65b9979 Fix frameworks error (#38710) 2025-09-15 11:46:02 -02:30