diff --git a/.idea/modules.xml b/.idea/modules.xml
index 29e3e19..52bca43 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -2,7 +2,7 @@
-
+
\ No newline at end of file
diff --git a/docs/get-started/quickstart.md b/docs/get-started/quickstart.md
new file mode 100644
index 0000000..2906dc9
--- /dev/null
+++ b/docs/get-started/quickstart.md
@@ -0,0 +1,93 @@
+
+
+
+# Quickstart
+
+## Start With a Prompt (4 mins)
+
+Dreamflow's AI-powered app generation allows you to create fully functional, production-ready applications from simple text or image descriptions. Simply describe what you want to build, and Dreamflow Agent will generate the entire app structure, UI components, and functionality for you.
+
+Ready to create your app? Simply:
+
+1. Open Dreamflow and click the textbox that says "Start with a prompt..."
+2. Enter your app description and wait for the Agent to generate your complete app.
+3. Review and customize the generated project in the [workspace](#).
+
+
+The Agent will create all the necessary screens, components, and functionality based on your description, giving you a fully functional app that you can further customize and deploy.
+
+
+
+
+
+
+***Prompt used:** Build a sleek music streaming app like Spotify, with a dark theme, album art grids, a bottom navigation bar (Home, Search, Library) and a clean now-playing screen with controls and progress bar.*
+
+### Sample Prompts
+
+Here are some prompts that we've used recently while chatting with the agent.
+
+#### A habit tracker
+
+**Prompt**
+
+ Build the main screen for a habit tracking app. Prepopulate with common habits, and then show the tasks for today on this main screen. Make the app look modern and whimsical.
+
+
+**Duration / Cost**: 161 seconds / 2.51 credits
+
+**Next steps**
+ - Let the user enter their own habits
+ - Give the user reminders for their habits, even when the app is not running.
+ - Allow the user to share their habit progress with others (through the share sheet of the mobile OS)
+
+
+#### Asteroids game
+
+**Prompt**
+
+Replace the main screen with an implementation of the classic game of Asteroids. Make this look and work the same as the original arcade game. Make sure that it has keyboard controls, mouse controls, and touch controls. Store the high-score locally.
+
+**Duration / Cost** : 183 seconds / 2.30 credits
+
+**Next steps**
+ - Give the game a start screen (with instructions)
+ - Give the game an end screen (with a leaderboard)
+ - Store a leaderboard of highscores on a server
+
+
+
+#### Chat app
+
+**Prompt**
+
+Build a small chat app (store the data locally for now) where users can chat with their friends. Make the app look modern and familiar, but also give it some unique twists.
+
+**Duration / Cost** : 313 seconds / 4.42 credits
+
+**Next steps**
+ - Make the chats clustered when folks are close to each other
+ - Store the chat data in a cloud database
+ - Show a notification when a message arrives when the app is not active
diff --git a/docs/get-started/welcome.md b/docs/get-started/welcome.md
new file mode 100644
index 0000000..9d800a3
--- /dev/null
+++ b/docs/get-started/welcome.md
@@ -0,0 +1,40 @@
+
+
+# Welcome
+
+Dreamflow is ...
+
+
+## Create Account
+
+
+create an account...
+
+
+## Build First Project
+
+
+
+
diff --git a/docs/index.md b/docs/index.md
index 8198f7c..eb79294 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -74,7 +74,7 @@ Dreamflow is a visual development environment that lets you build mobile, web, a
-
+
@@ -149,11 +149,11 @@ Discover additional tools and references to enhance your Dreamflow development e
## Still Have Problems?
-If you're still experiencing issues or need additional help, here are some resources to get you back on track:
+
\ No newline at end of file
diff --git a/docs/test-and-publish/publish/google-playstore-deployment.md b/docs/test-and-publish/publish/google-playstore-deployment.md
index 2701e01..54b3dfb 100644
--- a/docs/test-and-publish/publish/google-playstore-deployment.md
+++ b/docs/test-and-publish/publish/google-playstore-deployment.md
@@ -41,7 +41,7 @@ To create a new app in the Google Play Store, start by opening the [Google Play
height: '100%',
colorScheme: 'light'
}}
- frameborder="0"
+ frameBorder="0"
loading="lazy"
webkitAllowFullScreen
mozAllowFullScreen
@@ -88,7 +88,7 @@ To create the Service Account, you can follow the instructions from [here](http
height: '100%',
colorScheme: 'light'
}}
- frameborder="0"
+ frameBorder="0"
loading="lazy"
webkitAllowFullScreen
mozAllowFullScreen
@@ -117,7 +117,7 @@ To create the Service Account, you can follow the instructions from [here](http
height: '100%',
colorScheme: 'light'
}}
- frameborder="0"
+ frameBorder="0"
loading="lazy"
webkitAllowFullScreen
mozAllowFullScreen
@@ -151,7 +151,7 @@ To create the Service Account, you can follow the instructions from [here](http
height: '100%',
colorScheme: 'light'
}}
- frameborder="0"
+ frameBorder="0"
loading="lazy"
webkitAllowFullScreen
mozAllowFullScreen
@@ -199,7 +199,7 @@ Even if the build status appears as FAILURE, you can still download the AAB file
height: '100%',
colorScheme: 'light'
}}
- frameborder="0"
+ frameBorder="0"
loading="lazy"
webkitAllowFullScreen
mozAllowFullScreen
@@ -229,7 +229,7 @@ In Google Play Console, create an **Internal Testing** track and upload the **.a
height: '100%',
colorScheme: 'light'
}}
- frameborder="0"
+ frameBorder="0"
loading="lazy"
webkitAllowFullScreen
mozAllowFullScreen
@@ -263,7 +263,7 @@ To deploy your app from Dreamflow, navigate to **Publish > Android**, set the **
height: '100%',
colorScheme: 'light'
}}
- frameborder="0"
+ frameBorder="0"
loading="lazy"
webkitAllowFullScreen
mozAllowFullScreen
@@ -310,7 +310,7 @@ To promote your app to production, open your **Internal testing** track in Googl
height: '100%',
colorScheme: 'light'
}}
- frameborder="0"
+ frameBorder="0"
loading="lazy"
webkitAllowFullScreen
mozAllowFullScreen
diff --git a/docs/workspace/agent-panel.md b/docs/workspace/agent-panel.md
new file mode 100644
index 0000000..0faad71
--- /dev/null
+++ b/docs/workspace/agent-panel.md
@@ -0,0 +1,226 @@
+---
+slug: /workspace/agent-panel
+title: Agent Panel
+description: Learn about Dreamflow's AI-powered Agent Panel that helps you build and modify Flutter apps through natural language conversations
+tags: [agent, ai, development, flutter]
+sidebar_position: 5
+keywords: [agent panel, ai assistant, flutter development, natural language, code generation, dreamflow interface, development environment]
+---
+
+# Agent Panel
+
+The Agent Panel is an AI-powered development assistant that helps you build and modify your Flutter app through natural language conversations. Simply describe what you want to create or change, and the AI will help you implement it.
+
+
+
+
+To access the agent chat, click on the Agent Panel button in the right sidebar to open the chat interface. Type your request in the message box at the bottom. For example:
+
+- *"Add a blue button that says 'Submit'"*
+- *"Create a login form with email and password fields"*
+- *"Make the text larger and change the color to red"*
+
+
+
+
+
+
+
+## Agent Context
+
+The Agent Panel automatically understands your current project context, but you can provide additional information to help the AI give you more accurate and relevant assistance.
+
+The AI automatically has access to:
+- Your current app's code and structure
+- The widget you currently have selected
+- Recent changes you've made
+- Your project's dependencies and configuration
+
+
+
+### Image Attachments
+
+Use the Attach Image button in the message box to add screenshots or images to your conversation. This can help the AI understand:
+
+- Visual designs or mockups you want to implement
+- Current state of your app for reference
+- Specific UI elements you want to modify
+- Before/after comparisons for changes
+
+### Screenshot Mode
+
+Instead of trying to describe your current app's appearance in words, you can instantly capture what the AI needs to see. This is much faster and more accurate than explaining complex layouts, colors, or visual relationships through text alone.
+
+You can capture screenshots via the [Preview tab](../workspace/content-panel.md#app-preview) from the Content Panel. Click the camera button (📷) in the bottom-right corner of the preview area.
+
+
+
+
+
+
+
+### Add to Agent
+
+The "Add to Agent" feature enhances AI conversations by providing detailed context about specific widgets. When activated, it automatically:
+
+- Captures technical details including widget type, properties, and location
+- Takes a screenshot of the selected widget
+- Records the widget's position in the tree hierarchy
+- Adds all this information to the AI's context
+
+This gives the AI agent comprehensive understanding of the components you're working with, enabling more accurate assistance.
+
+
+
+
+
+
+
+
+### Prompt Edit
+
+Prompt Edit is a quick editing feature that lets you make changes to specific widgets without opening the full Agent Panel. The dialog is designed for single-purpose edits, keeping you focused on the specific widget without distractions.
+
+To use the Prompt Edit feature, right-click on any widget in the Widget Tree Panel and select "Prompt Edit" from the context menu.
+
+
+
+
+
+
+You can also edit widgets directly from the Preview app using Prompt Edit:
+
+1. Enable Inspect Mode in the Preview panel.
+2. Right-click on any widget you want to modify.
+3. Select "Prompt Edit" from the context menu.
+4. Enter your editing instructions in the prompt dialog.
+
+This provides a quick way to make targeted widget changes without leaving the Preview view.
+
+
+
+### App Logs
+
+The Agent Panel can automatically access your app's debug logs and console output to help diagnose issues and understand your app's behavior. This is particularly useful when debugging problems or explaining errors to the AI.
+
+When you ask the AI about errors, debugging, or app behavior, it can automatically retrieve recent log entries from your running Flutter app. It typically fetches the most recent 50-100 lines of logs (configurable) to get relevant context without overwhelming the conversation with too much information.
+
+The agent can access the following:
+- Print statements from your Dart code
+- Flutter framework messages and warnings
+- Error messages and stack traces
+- Hot reload notifications
+- Build process output
+
+
+
+
+
+
+
+
diff --git a/docs/workspace/content-panel.md b/docs/workspace/content-panel.md
new file mode 100644
index 0000000..f90ef0b
--- /dev/null
+++ b/docs/workspace/content-panel.md
@@ -0,0 +1,123 @@
+---
+slug: /workspace/content-panel
+title: Content Panel
+description: Learn about Dreamflow's Content Panel that provides an integrated environment for code editing, app preview, and debugging with real-time updates
+tags: [code-editor, preview, debug, development, flutter]
+sidebar_position: 3
+keywords: [content panel, code editor, app preview, debug console, flutter development, dreamflow interface, development environment, monaco editor, hot reload]
+---
+
+# Content Panel
+
+The Content Panel is the central workspace area where you can view and edit your application code, preview your app, and access debugging information. It provides a comprehensive development environment with multiple views and tools to help you build and test your applications.
+
+
+
+
+The Content Panel consists of three main sections that work together to provide a complete development experience:
+
+- **Code Editor**: View and edit your Flutter app source code.
+- **App Preview**: The application is running in real-time for you to test any logic or UI changes quickly.
+- **Debug Console**: Monitor any debug or print information once you run the app.
+
+:::info[Editor Modes]
+
+The content panel integrates with three main editor modes accessible via the top toolbar:
+- **Preview Mode**: Shows only the app preview with device frame styling. Ideal for focused visual development and testing.
+- **Code Mode**: Displays only the Monaco code editor without preview. Perfect for intensive coding sessions.
+- **Split Mode**: Shows both preview and code editor side-by-side with adjustable split ratio.
+:::
+
+## Code Editor
+
+The Code Editor is located on the left side of the Content Panel and provides a powerful environment for writing and editing your Flutter code.
+
+
+
+:::tip
+You can swap the positions of the preview and code editor by clicking on the icon at the top right of your Content Panel.
+
+
+:::
+
+The Code editor is built on **Monaco Editor** (the same editor that powers VS Code) and provides a full-featured coding experience. It includes syntax highlighting, auto-completion, and IntelliSense for Dart/Flutter development. The editor supports multi-file editing with tabs, real-time collaboration features, and integrates seamlessly with the platform's live preview system. It also includes advanced features like go-to-definition, find references, and code formatting that you'd expect from a professional IDE.
+
+
+
+## App Preview
+
+The App Preview panel is the central component of Dreamflow's environment, providing real-time preview of Flutter applications with advanced inspection and editing capabilities.
+
+The panel displays a real-time preview of your Flutter app running in **debug mode**, with instant updates as you make code changes. The preview runs in a WebView container and supports hot reload for immediate feedback during development.
+
+
+
+
+### Inspect Mode
+Inspect mode provides an interactive way to explore and modify your Flutter widgets visually. When enabled, hovering over widgets in the preview reveals their boundaries with colored overlays, making it easy to understand widget layout and hierarchy. This visual feedback helps developers quickly identify and understand the structure of their UI components.
+
+Selecting a widget with a click automatically synchronizes the [Widget Tree](modules-panel/widget-panel.md) and [Property Panel](properties-panel.md) to display detailed information about that widget, maintaining the highlight until another selection is made. This seamless integration between the preview and development panels streamlines the workflow for analyzing and modifying widgets. The context menu, accessed through right-click, offers powerful widget-specific actions including property editing, adding context to agent, code navigation, and other operations, enabling rapid iterations on your Flutter application's user interface.
+
+### Hot Reload and Hot Restart
+Dreamflow provides integrated hot reload and hot restart capabilities that allow you to quickly test code changes without losing your development context. These essential Flutter development tools are accessible through dedicated buttons in the content panel toolbar.
+
+**Hot Reload (⚡)** applies your code changes instantly while preserving the current application state. This is ideal for UI modifications, styling updates, and minor code changes. The operation typically completes in under 250ms and maintains your app's navigation stack, variables, and user interactions.
+
+**Hot Restart (↶)** completely restarts your Flutter app with all code changes applied, resetting the application state. Use this for structural changes, when hot reload fails, or after fixing compilation errors. The system intelligently prevents restart attempts when compilation errors are detected.
+
+
+### Additional Features
+
+- **Multi-Device Preview**: Choose from four preview modes to test your app across different form factors:
+ - Phone (iPhone 16 Pro Max - 390x844)
+ - Tablet (iPad Pro 13" - 834x1194)
+ - Desktop (1920x1080 landscape)
+ - Expanded (full-width preview without device frame)
+
+- **Interactive Zoom & Pan**: The preview supports zoom levels from 30% to 300% with smooth panning capabilities. Zoom preferences are automatically saved and restored between sessions.
+
+- **Theme Support**: Preview both light and dark themes for your Flutter app.
+
+
+
+## Debug Console
+
+The Debug Console is a dedicated output panel in Dreamflow that displays real-time logs and debug information from your Flutter application. This includes:
+
+- Print statements from your Dart code
+- Flutter framework messages
+- Hot reload notifications
+- Build process output
+- Error messages and stack traces
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/workspace/imgs/agent-panel.avif b/docs/workspace/imgs/agent-panel.avif
new file mode 100644
index 0000000..e7699ba
Binary files /dev/null and b/docs/workspace/imgs/agent-panel.avif differ
diff --git a/docs/workspace/imgs/agent-panel.png b/docs/workspace/imgs/agent-panel.png
new file mode 100644
index 0000000..86ff3d4
Binary files /dev/null and b/docs/workspace/imgs/agent-panel.png differ
diff --git a/docs/workspace/imgs/content-panel.png b/docs/workspace/imgs/content-panel.png
new file mode 100644
index 0000000..53fd7ae
Binary files /dev/null and b/docs/workspace/imgs/content-panel.png differ
diff --git a/docs/workspace/imgs/content-panel.webp b/docs/workspace/imgs/content-panel.webp
new file mode 100644
index 0000000..8a595e7
Binary files /dev/null and b/docs/workspace/imgs/content-panel.webp differ
diff --git a/docs/workspace/imgs/preview-panel.png b/docs/workspace/imgs/preview-panel.png
new file mode 100644
index 0000000..09f134a
Binary files /dev/null and b/docs/workspace/imgs/preview-panel.png differ
diff --git a/docs/workspace/imgs/prompt-edit-inspect.png b/docs/workspace/imgs/prompt-edit-inspect.png
new file mode 100644
index 0000000..ee4ab7d
Binary files /dev/null and b/docs/workspace/imgs/prompt-edit-inspect.png differ
diff --git a/docs/workspace/imgs/swap-positions.png b/docs/workspace/imgs/swap-positions.png
new file mode 100644
index 0000000..b764bde
Binary files /dev/null and b/docs/workspace/imgs/swap-positions.png differ
diff --git a/docs/workspace/imgs/widget-tree-view-mode.png b/docs/workspace/imgs/widget-tree-view-mode.png
new file mode 100644
index 0000000..b0e8131
Binary files /dev/null and b/docs/workspace/imgs/widget-tree-view-mode.png differ
diff --git a/docs/workspace/imgs/widget-tree.png b/docs/workspace/imgs/widget-tree.png
new file mode 100644
index 0000000..8d1ce93
Binary files /dev/null and b/docs/workspace/imgs/widget-tree.png differ
diff --git a/docs/workspace/keyboard-shortcuts.md b/docs/workspace/keyboard-shortcuts.md
new file mode 100644
index 0000000..fcd215e
--- /dev/null
+++ b/docs/workspace/keyboard-shortcuts.md
@@ -0,0 +1,8 @@
+---
+slug: /workspace/keyboard-shortcuts
+title: Keyboard Shortcuts
+# description:
+# tags:
+sidebar_position: 6
+# keywords:
+---
\ No newline at end of file
diff --git a/docs/workspace/modules-panel/_category_.json b/docs/workspace/modules-panel/_category_.json
new file mode 100644
index 0000000..53c4c51
--- /dev/null
+++ b/docs/workspace/modules-panel/_category_.json
@@ -0,0 +1,4 @@
+{
+ "label": "Modules Panel",
+ "position": 1
+ }
\ No newline at end of file
diff --git a/docs/workspace/modules-panel/modules-panel.md b/docs/workspace/modules-panel/modules-panel.md
new file mode 100644
index 0000000..57f2bc7
--- /dev/null
+++ b/docs/workspace/modules-panel/modules-panel.md
@@ -0,0 +1,24 @@
+---
+title: Modules Panel
+description: Learn about Dreamflow's Modules Panel that provides access to different functional areas including Widget Tree, Theme, Assets, Firebase and Supabase integration
+tags: [modules, workspace, ui, development, flutter]
+keywords: [modules panel, widget tree, theme, assets, firebase, supabase, flutter development, dreamflow interface, development environment]
+---
+
+
+# Modules Panel
+
+The Modules Panel enabled from the left side of the builder interface, provides access to different functional modules for managing your Flutter project.
+
+## Available Modules
+
+- **[Widget Tree Module](../modules-panel/widget-panel.md)**: The default module that provides navigation and management of your app's widget hierarchy, allowing you to browse, select, and organize UI components.
+
+- **[Theme Module](../modules-panel/theme.md)**: Manages app theming and styling by providing tools to customize colors, fonts, typography, and design tokens across your application.
+
+- **Assets Module**: Handles project asset management by allowing you to upload images, organize files, and manage all project resources in one centralized location.
+
+- **Firebase Module**: Configures Firebase integration for backend services including authentication, database, storage, and other Firebase-powered features.
+
+- **Supabase Module**: Sets up Supabase backend integration for database management, authentication, and real-time subscriptions to power your app's backend functionality.
+
diff --git a/docs/workspace/modules-panel/theme.md b/docs/workspace/modules-panel/theme.md
new file mode 100644
index 0000000..ec78cbf
--- /dev/null
+++ b/docs/workspace/modules-panel/theme.md
@@ -0,0 +1,10 @@
+---
+slug: /workspace/theme
+title: Theme
+# description:
+# tags:
+sidebar_position: 2
+# keywords:
+---
+
+# Theme
\ No newline at end of file
diff --git a/docs/workspace/modules-panel/widget-panel.md b/docs/workspace/modules-panel/widget-panel.md
new file mode 100644
index 0000000..910a3d4
--- /dev/null
+++ b/docs/workspace/modules-panel/widget-panel.md
@@ -0,0 +1,172 @@
+---
+slug: /workspace/widget-tree
+title: Widget Tree
+description: Learn about the Widget Tree panel in Dreamflow, a powerful hierarchical view that displays and helps you manage your Flutter app's widget structure
+tags: [widgets, ui, widget-tree, flutter, dreamflow, components]
+keywords: [widget tree, flutter widgets, ui components, widget hierarchy, widget management, widget structure, dreamflow interface, widget navigation, widget properties, widget selection]
+sidebar_position: 1
+
+---
+
+# Widget Tree
+
+The Widget Tree panel is a powerful hierarchical view that displays the complete structure of your Flutter app's widget tree, providing comprehensive tools for navigation, inspection, and modification of your UI components.
+
+**Hierarchical Tree View**: Displays your app's widget structure as an expandable tree, showing the parent-child relationships between widgets. Each node represents a widget with its type, properties, and children clearly visible.
+
+**Real-Time Synchronization**: The tree automatically updates in real-time as you make changes to your code, reflecting the current state of your running Flutter app.
+
+**Widget Selection**: Click on any widget in the tree to select it, which automatically highlights the corresponding widget in the preview panel and updates the property panel with its details.
+
+## Nodes
+
+**Nodes** are individual widgets in your Flutter app's hierarchy, displayed as tree items in the Widget Tree panel. Each node represents a widget instance with its properties and relationships.
+
+**Root Nodes**: Top-level widgets that represent entire screens or components.
+- **Page Nodes**: Main app screens
+- **Component Nodes**: Reusable custom widgets used in your main screen.
+
+**Child Nodes**: Widgets that contain other widgets
+- **Single Child**: Widgets with exactly one child (Container, Padding, Center)
+- **Multiple Children**: Widgets with multiple children (Column, Row, Scaffold)
+
+**Leaf Nodes**: Terminal widgets with no children such as Text, Image, Icon, Button.
+
+The tree structure helps you understand your app's widget hierarchy and navigate between different UI components.
+
+
+
+*The Widget Tree panel displays a hierarchical view of the selected page/screen, showing the complete widget tree including the Scaffold structure and any custom widgets used within it.*
+
+
+:::info[View Modes]
+
+**Consolidated View**: Hides structural widgets or Modifiers like `Expanded`, `Padding` to provide a cleaner, more focused view of your actual UI components.
+
+**Detailed View**: Shows every widget in the tree, including all structural and layout widgets, giving you complete visibility into the widget hierarchy.
+
+
+
+
+:::
+
+
+## Widget Management
+
+Right-click on any widget to access a comprehensive context menu with options for:
+- Adding new widgets
+- Wrapping existing widgets
+- Copying, cutting, and pasting widgets
+- Taking screenshots for AI context
+- Navigating to component definitions
+- Removing widgets
+
+### Add Widget
+Insert new widgets into your tree by selecting a parent widget and choosing from a categorized catalog of available widgets (Framework, Project, Dependencies). For structural widgets like Scaffold, you will see a list of property-specific widgets that can be added as children.
+
+
+
+
+
+
+
+
+Here’s a quick demo showing how you can add a widget to a Column:
+
+
+
+
+
+
+:::tip[Right-Click to Add Widget]
+For quick access to widget options, right-click on any existing widget to open the context menu. This provides an alternative way to add new widgets to your layout.
+:::
+
+### Wrap Widget
+Wrap existing widgets with containers, padding, or other layout widgets to modify their behavior without changing their core functionality.
+
+
+
+
+
+
+### Clipboard Operations
+The context menu provides standard clipboard operations (cut, copy, paste) that allow you to move and duplicate widgets across your layout tree. You can use either the context menu options or familiar keyboard shortcuts:
+
+- **Cut**: Ctrl/Cmd + X
+- **Copy**: Ctrl/Cmd + C
+- **Paste**: Ctrl/Cmd + V
+
+These operations enable efficient widget reuse and layout restructuring without having to recreate widgets from scratch.
+
+### Go to Code
+The "Go to Code" and "Go to Component" features provide quick navigation from the widget tree to the underlying [code implementation](../content-panel.md#code-editor). You can access these features by hovering over a widget in the tree and right-clicking on the widget to use the context menu options.
+
+- **Go to Code**: Jumps to the Code Editor and highlights the code for the selected widget.
+- **Go to Component**: For custom project widgets, opens the component file with the relevant widget code highlighted.
+
+This makes it easy to inspect and modify widget code directly from the visual layout editor.
+
diff --git a/docs/workspace/properties-panel.md b/docs/workspace/properties-panel.md
new file mode 100644
index 0000000..ddc0141
--- /dev/null
+++ b/docs/workspace/properties-panel.md
@@ -0,0 +1,135 @@
+---
+slug: /workspace/properties-panel
+title: Properties Panel
+description: Learn about Dreamflow's Properties Panel that provides comprehensive property editing for Flutter widgets with specialized editors and real-time visual feedback
+tags: [properties, widgets, ui, development, flutter]
+sidebar_position: 4
+keywords: [properties panel, widget properties, property editing, flutter development, dreamflow interface, development environment, visual editing, property editors]
+---
+
+# Properties Panel
+
+The Properties Panel is a sophisticated interface for editing widget properties in real-time, providing both visual and code-based editing capabilities with intelligent property type detection and specialized editors.
+
+
+
+
+
+
+
+
+**Real-Time Property Editing**: The panel displays all properties of the currently selected widget and allows you to edit them with immediate visual feedback. Changes are applied instantly to your running app.
+
+**Intelligent Property Editors:** The system automatically detects property types and provides specialized editors:
+- **Color Properties:** Color picker with hex input and visual color swatches
+- **TextStyle Properties:** Rich text styling editor with font family, size, weight, and color options
+- **Padding/Margin:** Visual padding editor with individual side controls
+- **Border Radius:** Corner-specific radius controls with visual preview
+- **Gradients:** Linear, radial, and sweep gradient editors with color stops
+- **Borders:** Border style, width, and color controls
+- **Images:** Asset and network image selectors
+- **Icons:** Icon picker with search functionality
+- **Alignment:** Visual alignment controls
+- **Boolean Properties:** Toggle switches for true/false values
+- **Enum Properties:** Dropdown menus for predefined options
+
+
+This makes the Properties Panel a comprehensive tool for visual Flutter development, allowing you to modify any aspect of your UI without writing code manually.
+
+:::tip[Quick Access from Widget Tree]
+The Properties Panel can be quickly accessed by clicking any widget in the Widget Tree. The panel will automatically update to show the properties of the selected widget.
+:::
+
+
+
+### Advanced Functionalities
+
+- **Property Search:** Search functionality to quickly find specific properties within complex widgets.
+- **Add Property Button:** Add new properties to widgets that don't have them configured yet.
+- **Grouped Properties:** For supported widgets (Container, Text, TextField), properties are organized into logical groups like "Layout", "Styling", "Behavior" for easier navigation.
+- **Syntax Highlighting:** For complex expressions and function properties, the panel provides syntax-highlighted code editors.
+- **CopyWith Support:** Automatically handles Flutter's copyWith pattern for updating nested properties like TextStyle sub-properties.
+
+
+
+## Modifiers
+
+
+Modifiers refer to wrapper widgets that can be added around existing Flutter widgets to modify their behavior, appearance, or layout. Think of them as "decorators" or "containers" that wrap around your base widgets. They are Flutter widgets that wrap around other widgets to modify their:
+- **Layout behavior** (positioning, sizing, constraints)
+- **Visual appearance** (colors, borders, shadows, opacity)
+- **Interactive behavior** (gestures, focus, accessibility)
+- **Animation properties** (transitions, transformations)
+
+
+
+
+### Adding a Modifier
+
+1. Select any widget in the Widget Tree Panel that you want to wrap with a **Modifier** widget.
+
+2. In the Properties Panel, scroll down to the **Modifiers** section at the bottom.
+
+3. Click the **+** button next to "Modifiers" tab to open the Modifier selection menu.
+
+4. Choose from available wrapper widgets such as:
+ - **Container** - For padding, margin, decoration, and constraints
+ - **Padding** - For adding space around content
+ - **Center** - For centering content
+ - **Align** - For positioning content
+ - **SizedBox** - For setting specific dimensions
+ - **Transform** - For rotations, scaling, and translations & other such modifier widgets.
+
+
+5. The Modifier widget will be added to your widget hierarchy and its properties will appear in the Modifiers tab section of the Properties panel, where you can edit them immediately.
+
+
+