Files
twenty/packages/twenty-website
b470cb21a1 Upgrade Apollo Client to v4 and refactor error handling (#18584)
## Summary
This PR upgrades Apollo Client from v3.10.0 to v4 and refactors error
handling patterns across the codebase to use a new centralized
`useSnackBarOnQueryError` hook.

## Key Changes

- **Dependency Update**: Upgraded `@apollo/client` from `^3.10.0` to
`^3.11.0` in root package.json
- **New Hook**: Added `useSnackBarOnQueryError` hook for centralized
Apollo query error handling with snack bar notifications
- **Error Handling Refactor**: Updated 100+ files to use the new error
handling pattern:
  - Removed direct `ApolloError` imports where no longer needed
- Replaced manual error handling logic with `useSnackBarOnQueryError`
hook
- Simplified error handling in hooks and components across multiple
modules
- **GraphQL Codegen**: Updated codegen configuration files to work with
Apollo Client v3.11.0
- **Type Definitions**: Added TypeScript declaration file for
`apollo-upload-client` module
- **Test Updates**: Updated test files to reflect new error handling
patterns

## Notable Implementation Details

- The new `useSnackBarOnQueryError` hook provides a consistent way to
handle Apollo query errors with automatic snack bar notifications
- Changes span across multiple feature areas: auth, object records,
settings, workflows, billing, and more
- All changes maintain backward compatibility while improving code
maintainability and reducing duplication
- Jest configuration updated to work with the new Apollo Client version

https://claude.ai/code/session_019WGZ6Rd7sEHuBg9sTrXRqJ

---------

Co-authored-by: Claude <[email protected]>
2026-03-13 14:59:46 +01:00
..
2025-03-11 18:39:20 +01:00
2023-12-29 11:17:32 +01:00
2026-03-12 15:07:53 +01:00
2025-10-21 19:02:39 +02:00

Twenty-Website

This is used for the marketing website (twenty.com). This is not related in any way to the main app, which you can find in twenty-front and twenty-server.

Getting Started

We're using Next.js We're using Postgres for the database. Mandatory for the website to work, even locally.

  1. Copy the .env.example file to .env and fill in the values.

  2. Run the migrations:

npx nx run twenty-website:database:migrate
  1. From the root directory:
npx nx run twenty-website:dev

Then open http://localhost:3000 with your browser to see the result.

Or to build in prod:

npx nx run twenty-website:build
npx nx run twenty-website:start