Frontend

Components

Overview of the React components used throughout the application.

UI Component Library

Built on shadcn/ui - a collection of reusable components built with Radix UI and Tailwind CSS.

Button

Various button variants and sizes

Card

Content containers

Input

Form inputs

Badge

Status badges

Dropdown Menu

Menus and context menus

Progress

Progress indicators

Custom Components

Chat Components

  • ChatPanel - Main chat interface
  • CitationPreview - Shows source citations

Notebook Components

  • NotebookCard - Notebook preview card
  • NotebookHeader - Notebook header
  • NotebookListItem - List item for notebooks

Studio Panel Components

  • StudioPanel - Main studio container
  • PodcastView - Podcast player
  • QuizView - Quiz interface
  • FlashcardView - Flashcard viewer
  • MindMapView - Mind map display

Source Management

  • SourcesPanel - Document list
  • AddSourcesModal - Add new sources
  • NotesPanel - User notes

Authentication

  • LoginForm - User login
  • SignUpForm - User registration
  • AuthButton - Auth state button

Component Patterns

Components follow consistent patterns:

  • TypeScript for type safety
  • Tailwind CSS for styling
  • Props interface for component API
  • cn() utility for class merging