Skip to Content
Found it useful? Support us with a 5 ⭐ review on ThemeForest!
Project Structure

Project Structure

      • mode-theme.tsx
      • chat-context.tsx
      • ScrollToTop.tsx
      • theme-context.tsx
      • use-chat.ts
      • use-countries.ts
      • use-currencies.ts
      • use-file-upload.ts
      • use-menu-items.ts
      • use-mobile.ts
      • use-theme.ts
      • app-layout.tsx
      • auth-layout.tsx
      • settings-layout.tsx
      • chat-provider.tsx
      • theme-provider.tsx
      • index.tsx
      • flight-data.ts
      • hotel-data.ts
  • App.tsx
  • main.tsx
  • index.html

What lives where?

  • /src/assets — Static assets like images, icons, or illustration files used across the UI.

  • /src/components — All reusable UI elements.

    • custom/ → Page-specific or feature-level components.
    • magicui/ → Pre-styled animated or interactive UI pieces.
    • ui/ → Core design-system primitives (buttons, inputs, modals, etc.).
    • mode-theme.tsx → Light/Dark mode toggle logic.
  • /src/contexts — React Contexts managing shared app state (e.g., theme, chat, scroll behavior).

    • chat-context.tsx → Global state for AI chat.
    • theme-context.tsx → Global theme context for dark/light mode.
    • ScrollToTop.tsx → Scroll restoration when navigating.
  • /src/hooks — Typed utility hooks for app logic.

    • use-chat.ts → Handles AI chat state & messages.
    • use-countries.ts, use-currencies.ts → Country & currency helpers.
    • use-file-upload.ts → File upload handling.
    • use-menu-items.ts → Sidebar & navigation items.
    • use-mobile.ts → Responsive/mobile detection.
    • use-theme.ts → Theme mode getter & setter.
  • /src/layouts — Page shells controlling structure and navigation.

    • app-layout.tsx → Main dashboard layout (header, sidebar, content).
    • auth-layout.tsx → Used for login/register pages.
    • settings-layout.tsx → For user settings & account pages.
  • /src/pages — Actual page-level views (home, profile, billing, etc.).

  • /src/providers — Global providers wrapping the app.

    • theme-provider.tsx → Supplies theme context globally.
    • chat-provider.tsx → Supplies AI chat context globally.
  • /src/routes — Route configuration (React Router v7).

    • index.tsx → Entry point mapping paths → pages.
  • /src/temp-data — Mock data for static preview/demo.

    • hotel-data.ts, flight-data.ts → Sample hotel & flight data.
  • /src/lib — Shared utilities, helpers, or constants (can extend as needed).

  • App.tsx — Root component defining layout + providers.

  • main.tsx — App entry point initializing React + Vite.

  • index.html — Vite HTML template for mounting the app.

Last updated on