Version 3 of the kit:
- Radix UI replaced with Base UI (using the Shadcn UI patterns)
- next-intl replaces react-i18next
- enhanceAction deprecated; usage moved to next-safe-action
- main layout now wrapped with [locale] path segment
- Teams only mode
- Layout updates
- Zod v4
- Next.js 16.2
- Typescript 6
- All other dependencies updated
- Removed deprecated Edge CSRF
- Dynamic Github Action runner
- Add NEXT_PUBLIC_PRODUCT_NAME as issuer in MFA enroll call
- This improves the user experience in authenticator apps by showing the product name
- Bump version by 2 patch versions
Co-authored-by: Claude <noreply@anthropic.com>
* refactor: streamline sign-in and sign-up methods containers for improved conditional rendering
- Updated SignInMethodsContainer and SignUpMethodsContainer to conditionally render the separator and "or continue with" text only when applicable authentication methods are available.
- Enhanced code readability by removing redundant div elements and improving the structure of conditional rendering.
* refactor: enhance UI components with improved styling and structure
- Updated PlanIntervalSwitcher to include hover effects and adjusted button size for better user interaction.
- Refined PersonalAccountDropdown by removing unnecessary animation classes for cleaner code.
- Modified Footer component to standardize padding across different screen sizes.
- Adjusted Pill component's height and padding for a more consistent appearance.
* refactor: enhance admin members and memberships tables with date rendering and sorting adjustments
- Removed User ID column from both AdminMembersTable and AdminMembershipsTable for a cleaner interface.
- Added date rendering functionality for Created At and Updated At columns, displaying time in a user-friendly format.
- Disabled sorting for Name, Email, Role, Created At, and Updated At columns to improve usability.
* fix: update account linking messages and redirect logic
- Changed the success message for account linking to indicate that a request has been sent and to prompt the user to wait.
- Added a redirect path to the PersonalAccountSettingsContainer for improved navigation after account linking.
- Removed the unused useUnlinkIdentity hook to clean up the codebase.
- Incremented application version from 2.21.0 to 2.21.2 in package.json.
- Added logic to conditionally show email option in account settings based on enabled authentication methods.
- Updated PersonalAccountSettingsContainer to utilize the new showLinkEmailOption feature flag.
- Refactored migration script to correct delimiter usage for better parsing of migration lines.
* chore: update project dependencies and documentation for Next.js 16
- Upgraded Next.js from version 15 to 16 across various documentation files and components.
- Updated references to Next.js 16 in AGENTS.md and CLAUDE.md for consistency.
- Incremented application version to 2.21.0 in package.json.
- Refactored identity setup components to improve user experience and added confirmation dialogs for authentication methods.
- Enhanced invitation flow with new logic for handling user redirection and token generation.
* refactor: streamline invitation flow in e2e tests
- Simplified the invitation flow test by using a predefined email instead of generating a random one.
- Removed unnecessary steps such as clearing cookies and reloading the page before user sign-up.
- Enhanced clarity by eliminating commented-out code related to identity verification and user membership checks.
* refactor: improve code readability in IdentitiesPage and UpdatePasswordForm components
- Enhanced formatting of JSX elements in IdentitiesPage and UpdatePasswordForm for better readability.
- Adjusted indentation and line breaks to maintain consistent coding style across components.
* refactor: enhance LinkAccountsList component with user redirection logic
- Updated the LinkAccountsList component to include a redirectToPath option in the useLinkIdentityWithProvider hook for improved user experience.
- Removed redundant user hook declaration to streamline the code structure.
* refactor: update account setup logic in JoinTeamAccountPage
- Introduced a check for email-only authentication support to streamline account setup requirements.
- Adjusted the conditions for determining if a new account should set up additional authentication methods, enhancing user experience for new users.
* Upgraded to Next.js 16
* Refactored code to comply with React 19.2 ESLint rules
* Refactored some useEffect usages with the new useEffectEvent
* Added Identities page and added second step to set up an identity after accepting an invitation
* Updated all dependencies
* Introduced PNPM catalogs for some frequently updated dependencies
* Bugs fixing and improvements
- Improve storage files handling
- Incremented version in package.json from 2.12.2 to 2.12.3.
- Updated ImageUploader component to improve label and image styles, adding cursor pointer and transition effects for better user interaction.
* bug(storage): use upsert when adding images
chore(dependencies): update package versions for improved compatibility
- Bumped `@ai-sdk/openai` from `2.0.11` to `2.0.15` for enhanced functionality.
- Updated `@tanstack/react-query` from `5.85.0` to `5.85.3` to incorporate the latest improvements.
- Incremented `ai` from `5.0.11` to `5.0.15` for better performance.
- Updated `@tailwindcss/postcss` from `4.1.11` to `4.1.12` for improved compatibility.
- Incremented `@types/react` from `19.1.9` to `19.1.10` for type safety enhancements.
- Adjusted `pino-pretty` from `13.1.1` to `13.0.0` for consistency across the codebase.
- Updated `supabase` from `2.34.3` to `2.34.0` to ensure the latest improvements and bug fixes are included.
- Updated `tailwindcss` from `4.1.11` to `4.1.12` for better integration.
* chore(dependencies): update package versions for improved compatibility
- Bumped `@ai-sdk/openai` from `2.0.15` to `2.0.15` for enhanced functionality.
- Updated `@tanstack/react-query` from `5.85.0` to `5.85.3` to incorporate the latest improvements.
- Incremented `ai` from `5.0.11` to `5.0.15` for better performance.
- Updated `@tailwindcss/postcss` from `4.1.11` to `4.1.12` for improved compatibility.
- Incremented `@types/react` from `19.1.9` to `19.1.10` for type safety enhancements.
- Updated `supabase` from `2.34.3` to `2.34.0` to ensure the latest improvements and bug fixes are included.
- Updated `tailwindcss` from `4.1.11` to `4.1.12` for better integration.
- Updated `@types/node` from `24.2.1` to `24.3.0` for type safety enhancements.
- Incremented `turbo` and `@turbo/gen` from `2.5.5` to `2.5.6` for improved performance and compatibility.
* refactor(auth): replace Supabase `User` type with new `JWTUserData` type across the codebase
- Replaced usage of Supabase's `User` type with the newly defined `JWTUserData` type for better type mapping and alignment with JWT claims.
- Refactored session-related components and hooks (`useUser`, `requireUser`) to use the updated user structure.
- Updated Supabase client keys to use `publicKey` instead of `anonKey`.
- Adjusted multi-factor authentication logic and components to use `aal` and additional properties.
- Applied consistent naming for Supabase secret key functions.
- Incremented version to 2.12.0.
- Introduced a new `deprecated` property in the `EnvVariableModel` type to handle deprecated environment variables.
- Updated the `EnvList` component to display a warning badge for deprecated variables, including reason and alternative suggestions.
- Enhanced filtering logic to allow users to toggle the visibility of deprecated variables.
- Added new deprecated variables for Supabase keys with appropriate reasons and alternatives.
- Added support for filtering deprecated environment variables in the `FilterSwitcher` component.
- Updated the `Summary` component to display a badge for the count of deprecated variables.
- Introduced a button to filter and display only deprecated variables.
- Adjusted filtering logic to include deprecated variables in the overall state management.
add BILLING_MODE configuration to environment variables
- Introduced a new environment variable `BILLING_MODE` to configure billing options for the application.
- The variable supports two values: `subscription` and `one-time`.
- Marked as deprecated with a reason indicating that this configuration is no longer required, as billing mode is now automatically determined.
- Added validation logic for the new variable to ensure correct value parsing.
- Bumped dependencies: `lucide-react`, `react-hook-form`, `@supabase/supabase-js`, `@tanstack/react-query`, `@sentry/nextjs`, and more.
- Added `react-dropzone` to `@kit/ui` for file upload support.
- Adjusted `reset-password.html` to streamline style usage and HTML structure.
- Added new translation keys for file upload functionality.
- Cleaned up import order in `existing-account-hint.tsx`.
- Bumped `lucide-react` to `^0.516.0`
- Upgraded `react-hook-form` to `^7.58.0`
- Updated `zod` to `^3.25.67`
- Incremented `@sentry/nextjs` to `^9.29.0`
- Miscellaneous upgrades for `eslint`, `@tailwindcss/postcss`, and `supabase` dependencies.
* Update Calendar component and update dependencies
* Refactor AGENTS.md and CLAUDE.md for clarity and consistency
- Streamlined project overview and architecture sections in both AGENTS.md and CLAUDE.md to enhance readability.
- Updated command sections to reflect essential commands and improved formatting for better usability.
- Clarified multi-tenant architecture details and database operations, ensuring accurate representation of the project's structure.
- Enhanced component organization and security guidelines for better developer onboarding and adherence to best practices.
* Refactor code for consistency and readability
- Improved formatting in `env-variables-model.ts` for better description clarity.
- Enhanced readability of `current-plan-alert.tsx` and `current-plan-badge.tsx` by adjusting the status badge mapping.
- Standardized object syntax in `lemon-squeezy-webhook-handler.service.ts` for consistency.
- Refined className ordering in `account-selector.tsx` for better maintainability.
- Ensured proper syntax in `console.ts` with consistent object export.
- Reorganized imports in `calendar.tsx` for clarity and structure.
- Improved className formatting in `sidebar.tsx` for better readability.
* Update package version to 2.10.0 in package.json
Refactor:
- Improved consistency and robustness by standardizing file encoding arguments from 'utf-8' to 'utf8' across various file read/write operations.
- Simplified status mapping logic in billing components and services by replacing switch statements with direct mapping objects for clearer and more maintainable code.
- Enhanced type conversion and error handling in billing and internationalization components for improved reliability.
- Updated sorting logic in team member tables for more predictable member ordering.
- Improved error logging with sanitized output to prevent formatting issues.
- Adjusted environment variable whitelisting to use a more flexible matching pattern.
- Fix variables for sidebar style handling
Style:
- Refined spacing and layout in account selector and sidebar header components for better visual consistency.
* Allow Super Admin to view tables using RLS
* Replace previous usages of the Admin client using the authed client using the new RLS
* Enforce MFA for Super Admin users
* Enforce RLS when user opted in to MFA.
* Add Super Admin Access Policies and Update Database Types
* Consolidate super admin logic into a single function that uses the RPC is_super_admin
* Added Super Admin E2E tests
* Fixes and improvements
* Bump version to 2.5.0
One-Time Password (OTP) package added with comprehensive token management, including OTP verification for team account deletion and ownership transfer.
* Upgrade ESLint and related configurations to version 9
- Update ESLint to version 9.19.0
- Migrate ESLint configurations to flat config format
- Remove deprecated ESLint config files
- Update package dependencies and configurations
- Simplify ESLint setup across packages
- Remove unnecessary ESLint config blocks from package.json files
- Improved CI caching with Turborepo tasks
- Removed duplicate styles
* Updated to TailwindCSS v4
* Moved CSS module to its own CSS file because of lightingcss strict validation
* Respect next parameter in middleware
* Updated all packages.
* Split CSSs for better organization.
* Redesigned theme and auth pages
* Improved pill and header design
* Formatted files using Prettier
* Better footer layout
* Better auth layout
* Bump version of the repository to 2.0.0
* Some changes ported from the work on the makerkit.dev website related to the marketing sections of the kit, such as documentation
* Added slight background hue to make darker theme better looking
* Support more complex configurations for documentation navigations.
* Do not fetch content from Keystatic when non-needed
* Add cursor pointers in dropdown
* Updated packages
* Update Next.js and React versions in all packages
* Replace onRedirect function with next/link in BillingSessionStatus, since it's no longer cached by default
* Remove unused revalidatePath import in billing return page, since it's no longer cached by default
* Add Turbopack module aliases to improve development server speed
* Converted new Dynamic APIs to be Promise-based
* Adjust mobile layout
* Use ENABLE_REACT_COMPILER to enable the React Compiler in Next.js 15
* Report Errors using the new onRequestError hook
Upgraded multiple dependencies across the project, including @types/node to ^22.5.1 and @supabase/supabase-js to ^2.45.3. This change also includes updates to react-related types and various other packages to their latest versions to maintain compatibility and leverage new features.
Replaced useEffect with useMemo for computing the account value. This simplifies the state management and ensures that the value is memoized based on the selectedAccount prop.
Added a conditional check for displaying the password update card in the account settings page based on the new `enablePasswordUpdate` feature flag. This ensures the card is shown only if the password update feature is supported.
Rearranged imports for better organization and readability across multiple files. Updated the `react-i18next` dependency to version 15.0.1 in various `package.json` files. Adjusted formatting in multiple TypeScript files to ensure code style consistency.
Design Updates: Breadcrumbs, Empty State, new Charts and new colors
* Add Breadcrumb component to UI package
* Add AppBreadcrumbs for improved navigation: Replaced static text descriptions with the new AppBreadcrumbs component across multiple pages to enhance navigation. Addressed an issue with Supabase client warnings by temporarily suppressing getSession warnings. Also made minor UI adjustments, including adjustments to heading styles and layout features.
* Enhance UI styling and configuration settings: Updated various UI components and global styles to improve styling consistency and responsiveness.
* Update global styles and adjust padding: Updated several CSS variables for improved color accuracy and appearance. Added padding to admin account page body for better layout consistency.
* Refactor UI components and adjust styling: Replaced Heading tags in Plan Picker with span for consistency. Added active and hover states to buttons in the sidebar. Refined background, layout styling, and color schemes across various components. Removed sidebar case in Page component switch statement.
* Add Chart Components and Integrate into Dashboard: Introduced `recharts` library and created `Chart` components. Updated dashboard to use the new components and enhanced UI/UX with descriptions and restructured cards.
* Enhance dashboard demo UI layout: Refactor the layout by adjusting flex properties and spacing classes to improve component alignment. Update dummy data generation and Figure font size for better visual consistency.
* Update localization keys for navigation labels: Changed localization keys for tab labels to use 'routes' prefix for consistency. Adjusted corresponding component references and added missing keys for routes. This ensures better organization and uniformity in the code.
* Add EmptyState component and enhance account handling: Introduced a new EmptyState component for UI consistency and updated JSON locales with 'account' route. Modified HomeAddAccountButton to accept className prop and refactored HomeAccountsListEmptyState to use the new EmptyState component. Updated navigation config to align labels in locales.
* Add locale support and enhance currency formatting: This commit introduces locale-based currency formatting across billing components by utilizing the `useTranslation` hook to fetch the current language. It also refactors the `formatCurrency` function to accept an object parameter for better readability and reusability.
* Fix typo in devDependencies section of template generator: Corrected a syntax error in `package.json.hbs` template affecting the `@kit/tsconfig` entry. The change ensures that the dependency is properly defined and prevents potential issues during package management.
* Update heading levels and add tracking-tight class in auth shell: Changed Heading components from level 4 to level 5 and added the 'tracking-tight' class in multiple auth-related pages. This improves visual consistency and better aligns the typography across the application.
Deleted CloudflareMailer class and its implementation from the mailers package. Updated dependencies across various packages, converting certain imports to use `type` only, and bumped versions for packages like `react-query`, `lucide-react`, and others.
* Add workspace context and custom hooks for user and team accounts
The commit introduces a new workspace context for both user and team accounts. New custom hooks, useUserWorkspace and useAccountWorkspace, were created to access this context data. These changes allow for more streamlined data access and manipulation, enabling features that depend on account context information to function more efficiently.
* Upgrade pnpm action-setup to version 4
The commit updates the version of pnpm action-setup used in GitHub workflows from v2 to v4. This upgrade can provide enhancements and improved features offered by the newer version.
* Update pnpm/action-setup version in workflow
The commit removes the explicit "version: 8" specifier in the Github Action workflow for "pnpm/action-setup". The updated workflow now points to "pnpm/action-setup@v4" instead of "pnpm/action-setup@v2", aligning it with usage elsewhere in the workflow.
* Refactor magic link auth container for URL handling
The magic link auth container has been updated to use a standard URL interface for managing URL and query parameters. This improves readability and error handling in the code.URL-related operations are now conducted via the URL object.
This commit refines the Multi-Factor Authentication (MFA) handling by removing 'requireUser' method, optimizing 'useFetchMfaFactors' hook to avoid fetching stale data, and improving error logging. The changes enhance the system's user session management and the MFA challenge response, ensuring smoother user experience and potential troubleshooting.