- Replace static `siteConfig` with dynamic `getWebsiteInfo()` function
- Add `Site` section to translation JSON files for multilingual support
- Update types to distinguish between website config and website info
- Remove deprecated `site.ts` configuration file
- Modify components and utilities to use new translation-based configuration
- Ensure consistent website metadata generation across the application
- Move menu, footer, and social links to `config.tsx`
- Create `constants.ts` for shared constants like `POSTS_PER_PAGE`
- Extract translation utility to `translator.ts`
- Move table of contents generation to `lib/blog/toc.ts`
- Update import paths across multiple components
- Simplify email configuration using `siteConfig`
- Replace hardcoded site URL references with dynamic getBaseUrl() function
- Remove unnecessary keywords and author fields from siteConfig
- Simplify metadata generation in constructMetadata function
- Add EMAIL_FROM constant for email configuration
- Improve type definitions and remove redundant configurations
- Create waitlist page with responsive design and email subscription form
- Add localized messages for English and Chinese waitlist pages
- Implement form inputs with labels and validation
- Use Shadcn/ui Card and Button components for consistent styling
- Add padding to page container for improved layout
- Create about page with author information and contact section
- Add localized messages for English and Chinese about page
- Implement responsive image gallery with multiple column layouts
- Use Pexels images for gallery content
- Add image loading optimization with eager and lazy loading
- Update Next.js image configuration to support Pexels image domain
- Enhance page layout with Shadcn/ui Avatar and Button components
- Create contact page with responsive design and form layout
- Add localized messages for English and Chinese contact pages
- Implement form inputs with labels and validation
- Use Shadcn/ui components for consistent styling
- Add Card and Textarea components for enhanced UI
- Implement releases collection in content-collections.ts for tracking version updates
- Create changelog page with dynamic release rendering for multiple locales
- Add ReleaseCard component to display version details and changes
- Implement getReleases utility function to fetch and sort release notes
- Update internationalization messages for changelog page
- Add English and Chinese release notes for v1.0.0, v1.1.0, and v1.2.0
- Implement pages collection in content-collections.ts for legal documents
- Add cookie policy, privacy policy, and terms of service pages for English and Chinese locales
- Create custom page layout and component for rendering legal documents
- Add metadata generation and custom page fetching logic
- Update not-found page to use LocaleLink for internationalization
- Enhance blog post page with prose styling
- Modify all posts button variant
- Introduce new features block variants (Features, Features2, Features4, Features5, Features6, Features7, Features8, Features9)
- Add Recharts and Dotted Map libraries for advanced charting and visualization
- Create a new chart component with support for light and dark themes
- Update features page to include all new feature block components
- Add reference links to NSUI design system for each feature block
- Enhance feature sections with responsive layouts and modern design patterns
- Introduce new content block variants (Content, Content2, Content3, Content4, Content5, Content6)
- Replace WebP images with PNG for better compatibility and performance
- Update content page to include all new content block components
- Add reference links to NSUI design system for each content block
- Enhance content sections with responsive layouts and modern design patterns
- Introduce new hero section variants (HeroSection2, HeroSection3, HeroSection4)
- Add Swiper library for carousel functionality in HeroSection3
- Include new block images for light and dark modes
- Update home page to use HeroSection4
- Add block images for card, charts, and music sections
- Update navbar mobile and desktop components with consistent styling
- Enhance active and hover states for navigation menu items
- Remove dark mode specific text color variants
- Add active state detection for sub-menu items
- Simplify background and text color transitions
- Remove testimonials component
- Switch to default theme CSS import
- Introduce new theme CSS files for various color palettes:
- Blue
- Green
- Orange
- Red
- Rose
- Violet
- Yellow
- Zinc
- Update global CSS to import themes dynamically
- Remove hardcoded theme variables from globals.css
- Provide flexible theming options for light and dark modes
- Refine and expand best practices for:
- AI SDK
- Date-fns
- Next.js
- Radix UI
- React
- React Hook Form
- Stripe
- Tailwind CSS
- TypeScript
- Zustand
- Improve guidelines with more specific and actionable recommendations
- Enhance type safety and performance suggestions across different technologies
- Introduce new blocks routes for hero, pricing, features, FAQ, stats, call-to-action, and content components
- Update marketing navigation configuration to include new blocks menu section
- Add corresponding route entries in `routes.ts`
- Create placeholder pages for block components
- Update localization files to support new blocks menu items
- Modify pricing page to include pricing comparator component
- Refactor pricing component styling for consistency
- Create new `/pricing` route with dynamic localization
- Implement three pricing components (Pricing3, Pricing4, Pricing5) from NSUI design system
- Update routes configuration to use dedicated pricing page instead of anchor link
- Add localization support for pricing page title
- Adjust home page margin for consistent layout
- Modify mobile navbar to conditionally render login/signup buttons based on user authentication
- Update English locale translations with minor text refinements
- Add `userLoggedIn` prop to `MainMobileMenu` component for dynamic rendering
- Improve mobile menu layout and user experience
- Move AI menu section to the top of the marketing menu configuration
- Remove duplicate AI menu section in marketing links
- Add TODO comment for mobile menu scrollbar layout issue
- Remove scrollbar from mobile menu using RemoveScroll component
- Improve mobile menu accessibility and scrolling behavior
- Update blog post page with refined category link styling
- Modify blog table of contents to add hover state for links
- Enhance locale selector with optional locale name display
- Refactor navbar mobile and desktop components with improved layout and styling
- Reorganize marketing menu links and update icon usage
- Adjust font weights and hover states across navigation components
- Update footer, navbar, and mobile navbar to use dynamic social and menu links
- Implement active state highlighting for navigation items using locale pathname
- Replace static social links with a dynamic function in marketing configuration
- Improve icon and styling consistency across navigation components
- Add null checks for menu and social links to prevent rendering errors
- Update icon for About page in menu links
- Change "publisher" to "author" in English and Chinese translation files
- Add Lucide icons for date and reading time in blog post page
- Implement link underline animation in global CSS
- Enhance blog post page layout with icon-based metadata display
- Improve visual consistency and internationalization for blog components
- Add "logout" translation key to English and Chinese locale files
- Update `UserButton` component to use translated logout text
- Modify mobile and desktop navbar to conditionally render user button based on session
- Adjust styling for blog category list mobile and navbar components
- Improve internationalization and user authentication UI
- Add translation support for menu links, footer links, and avatar links
- Create `createTranslator` utility function for dynamic translations
- Update marketing configuration to use translation-based menu and link generation
- Modify navbar, footer, and user button components to use translated content
- Add new "Common" translation keys for login and signup buttons
- Refactor marketing configuration to dynamically generate links with translations
- Improve internationalization across marketing-related components
- Add new `MenuItem` and `NestedMenuItem` types for improved type safety
- Update marketing configuration to use new types with `title` instead of `name`
- Modify footer, navbar, and user button components to handle optional icons
- Enhance media query hook with server-side rendering support
- Update Chinese translation with minor punctuation adjustments
- Improve component rendering with null checks for icons
- Modify `routes.ts` to add AI feature routes and remove deprecated routes
- Update `marketing.tsx` with new AI feature menu links and more descriptive icons
- Refactor navbar mobile and locale selector components with improved icon imports
- Adjust theme switcher button styling for better visual consistency
- Enhance menu link descriptions and icons for improved user experience
- Merge marketing-related configuration files into a single `marketing.tsx`
- Remove deprecated configuration files: `marketing.ts`, `marketing-links.tsx`, `footer.ts`, `hero.ts`, `landing.ts`, and `user-button.ts`
- Update navbar, footer, and user button components to use new centralized configuration
- Add comprehensive social links, footer links, menu links, and avatar links
- Simplify site configuration by removing unnecessary links
- Improve code organization and reduce configuration complexity
- Move MDX component from marketing to shared folder
- Remove deprecated blog post and blog posts components
- Update blog page imports to use new MDX component location
- Add reading time estimation utility function
- Reorganize navbar and mobile navbar components
- Update marketing links configuration
- Improve component modularity and code organization
- Remove type assertions for href in various components
- Update blog card and blog post page to use `query` instead of `params`
- Simplify routing configuration by commenting out `pathnames` in `routing.ts`
- Remove commented TODOs related to href type handling
- Improve type safety and routing consistency across components
- Delete email template files: `email-formats.ts`, `newsletter-welcome.tsx`, `reset-password.tsx`, and `verify-email.tsx`
- Move `getLocaleFromRequest` utility function from `auth.ts` to `utils.ts`
- Update Chinese translation for newsletter and copyright text
- Improve code organization and remove redundant email-related files
- Update middleware to exclude API routes from locale redirection
- Modify public routes to include new pages and remove documentation routes
- Adjust auth routes order for better readability
- Replace `NEXT_PUBLIC_APP_URL` with `NEXT_PUBLIC_BASE_URL` across configuration files
- Clean up and standardize authentication and site configuration
- Replace `templateId` with `template` in email sending function
- Rename `translations` to `messages` in email template props
- Consolidate email template and sending logic in `send.ts`
- Remove separate `templates.ts` file and merge functionality
- Update email template components to use new message structure
- Improve type definitions for email-related functions and props
- Update `auth-card.tsx` to use `LocaleLink` for logo navigation
- Modify `bottom-button.tsx` with a temporary type assertion for href
- Replace `Link` with `LocaleLink` in `navbar-mobile.tsx` and `navbar.tsx`
- Ensure consistent internationalization routing across components
- Rename `usePathname` and `useRouter` to `useLocalePathname` and `useLocaleRouter`
- Update imports in locale selector component to use new navigation hook names
- Improve type safety and consistency in internationalization routing
- Rename `getPathname` to `getLocalePathname` in navigation module
- Update sitemap generation to use new locale-specific pathname function
- Add root path to routing pathnames configuration
- Improve type safety and internationalization consistency in routing
- Rename `Link` import to `LocaleLink` in navigation module
- Remove console log statements in blog page components
- Update blog card, blog category list, and other components to use `LocaleLink`
- Simplify routing configuration by removing unnecessary pathname entries
- Enhance type safety and internationalization consistency
- Add comprehensive email template system with React Email and use-intl
- Implement dynamic email template rendering with locale-specific translations
- Create reusable email components for consistent design
- Update authentication flow to support multilingual email templates
- Add new email-related dependencies and configuration
- Refactor email sending logic to support dynamic locale detection
- Integrate React Email library for creating email templates
- Add email templates for newsletter welcome, reset password, and email verification
- Create email format styles for consistent email design
- Configure Resend email service with new mail utility
- Update authentication flow to use React Email templates
- Add new email-related dependencies in package.json