# View Architecture & Reference **Version:** 1.0 **Status:** PRODUCTION **Last Updated:** January 2026 --- ## Overview This document defines the professional view architecture for Job Info. All UI should follow these patterns for consistency, maintainability, and professional appearance. --- ## View Hierarchy ``` JobInfo Application ├── AuthView │ └── Sign In Form ├── LandingView │ ├── Header │ ├── JobCardView │ │ ├── Search & Filters │ │ └── Job Cards (Grid) │ └── Footer ├── ManagerInfoView │ ├── Job Header │ ├── Job Info Panel │ ├── FileListView │ │ ├── File Search │ │ ├── File Categories │ │ │ ├── Manager Info │ │ │ ├── Contracts / Estimates │ │ │ ├── Submittals │ │ │ ├── Plans │ │ │ └── Other │ │ └── File Actions │ ├── NotesSection │ └── Footer ├── NotesView │ ├── Notes Header │ ├── Notes Content (Read-only) │ └── Back to Job Detail └── FilePreviewModal ├── PDF Viewer ├── Image Viewer └── Word Document Handler ``` --- ## 1. AuthView (Sign In Page) **Purpose:** Authenticate user via PocketBase **Components:** - Logo/Header - Email input - Password input - Sign In button - Error messages - Remember Me checkbox (optional) **State:** - `isLoading`: boolean - `errorMessage`: string | null - `email`: string - `password`: string **Key Functions:** ```javascript async function handleSignIn(email, password) { // 1. Show loading state // 2. Call pb.collection('users').authWithPassword() // 3. Store token in localStorage // 4. Redirect to index.html (LandingView) // 5. Handle errors gracefully } ``` **HTML Structure:** ```html
Construction Project Name
Construction Project Name
John Smith
john@example.com
Jan 15, 2025
Active
manager_info.pdf
Project kickoff meeting scheduled for Monday
Content