# Plano Realty CRM - Geospatial Field Service Platform > **The Next Generation of Roofing Sales & Territory Management** **Plano Realty CRM** is an advanced, data-driven platform designed to revolutionize how roofing professionals in Plano, Texas manage their territories, leads, and customer interactions. By combining geospatial intelligence, AI-driven insights, and intuitive workflows, we bridge the gap between field agents and office operations. --- ## πŸ›οΈ PART 1: PRODUCT OVERVIEW ### 🌟 Value Proposition In a competitive roofing market, speed and data are everything. Traditional spreadsheets and paper maps leave money on the table. **Plano Realty CRM** solves this by providing: - **Precision Targeting**: Identify "Golden Leads" (older homes with high value) instantly on a map. - **Operational Efficiency**: Automate scheduling and follow-ups with our AI Concierge. - **Real-Time Intelligence**: Know the storm risk and roof condition of every property before you knock. ### πŸ€– The "Plano AI Assistant" (Chatbot) Our AI is not just a support bot; it is a context-aware worker that understands your business data. #### For Field Agents (Workers) - **"Smart Querying"**: Ask *β€œShow me the properties built before 2000”* or *β€œWhich homeowner wants to sell?”*. - **Lead Qualification**: The AI knows which leads are "Hot" and prompts you to prioritize them. - **Risk Analysis**: Ask *β€œWhat is the current storm risk?”* to get a breakdown of wind speeds vs. roof vulnerability. #### For Customers (Homeowners) - **Instant Diagnostics**: (Future) Schedule inspections without waiting on hold. - **Project Updates**: Check the status of their roof repair. #### For Guests (Website Visitors) - **Lead Capture**: The AI engages visitors, answers generic questions about roofing services, and encourages them to sign up or request a free estimate. ### πŸ“Š The Data Dashboard A 360-degree view of your territory's health. 1. **Golden Leads Scatter Plot**: Visualizes high-value opportunities (High Value + Older Built Year). 2. **Risk Index Gauge**: A real-time meter combining live wind speed data with the percentage of "Needs Repair" roofs. 3. **Revenue Potential**: Bar charts showing which neighborhoods offer the highest ROI based on renovation needs. 4. **Roof Health**: A visual breakdown of the entire territory's roof conditions (Good, Fair, Needs Repair). 5. **Owner Intent Funnel**: Tracks the pipeline from "Willing to Sell" -> "Hot Leads". --- ## οΏ½ KEY FEATURES (Latest Updates) ### 🎨 "LynkedUp Pro" Branding & UX - **Smooth Animations**: Global page transitions (Fade/Slide) and silky-smooth collapsible sidebar. - **Visual Polish**: Glassmorphism everywhere, custom "LynkedUp" loaders, and pulsing interactive elements. - **Dark Mode**: Fully supported system-wide dark mode with inverted map tiles for comfortable night viewing. ### 🌍 Advanced Mapping - **Lead Creation**: Click anywhere on the map to reverse-geocode addresses and create new leads on the fly. - **Polygon Visualization**: Color-coded property footprints indicating status (Hot Lead, Customer, etc.). --- ## οΏ½πŸ‘₯ USER ROLES & DEMO ACCOUNTS To explore the platform, use these pre-configured accounts. **Password for ALL accounts is: `password`** ### 1. Field Agent (Worker) *The primary user. Can view maps, access detailed property data, and manage leads.* - **Username/ID**: `FA001` (Frank Agent) - **Alternates**: `FA002`, `FA003`, `FA004`, `FA005` - **Role Capabilities**: - Access Dashboard & Widget Data. - View/Edit Lead Status (Hot, Cold, Customer). - Use Chatbot with full data context. ### 2. Administrator *The manager. Sees all agents and global stats.* - **Username/ID**: `ADM01` (Adam Admin) - **Alternates**: `ADM02`, `ADM03` - **Role Capabilities**: - All Agent capabilities + User Management (Mock). ### 3. Customer (Homeowner) *The client. Limited view of their own property.* - **Username**: `alice` - **Alternates**: `bob`, `charlie` - **Role Capabilities**: - View personal property details. - Request Service. --- ## πŸ’» PART 2: DEVELOPER GUIDE ### πŸ›  Tech Stack & Architecture - **Frontend**: React 18 (Vite), Tailwind CSS, Glassmorphism UI. - **State**: `MockStore` (Simulates Backend/DB), `AuthContext` (Session Management). - **AI Engine**: Groq SDK (`qwen-3-32b`) injected with dynamic system prompts. - **Visuals**: `react-leaflet` (Maps), `recharts` (Analytics), `lucide-react` (Icons). ### 🧠 Deep Dive: How It Works #### 1. The "Mock Store" (Data Layer) Located in `src/data/mockStore.jsx`. It generates ~60 realistic property records using weighted randomization algorithms to create organic-looking data distributions (e.g., 10% bad roofs, random build years). - **Why?**: To provide a rich, testable dataset without needing a live backend database. #### 2. AI Context Injection Located in `src/components/Chatbot.jsx`. - When a user sends a message, we don't just send their text. We inject a **System Prompt** containing live dashboard metrics. - **Example Injection**: ```text SYSTEM: You are a roofing assistant. CONTEXT: - 45 Total Properties - 12 Golden Leads (Top: 123 Maple Dr) - 8 Hot Leads needing canvassing ``` - This allows the AI to answer specific questions accurately. #### 3. Leaflet Customization Located in `src/pages/Maps.jsx`. - We use custom SVGs overlays on the map. - **Reverse Geocoding**: Clicking a blank spot calls the OpenStreetMap API to fetch the address, allowing agents to "create" new property records on the fly. ### πŸš€ Setup & Contribution 1. **Clone**: `git clone ` 2. **Install**: `pnpm install` 3. **Env**: Create `.env` with `VITE_GROQ_API_KEY` and `VITE_OPENWEATHER_API_KEY`. 4. **Run**: `pnpm run dev` **Maintained by Satyam Rastogi**