Skip to content

View Designer

Doggy's View Designer is a visual page layout tool supporting drag-and-drop design, data source binding, and live preview.

Overview

The view system is built on entities in src/Entity/Platform/:

  • View.php: View definition (layout config, data sources)
  • ViewField.php: Field configuration within a view

Admin controller: App\Controller\Admin\Platform\ViewEditorController
API controller: ViewEditorApiController

View Structure

View
├── Layout configuration (grid rows/columns)
├── Field bindings (ViewField)
│   ├── Data table
│   ├── Form
│   ├── Stat card
│   └── Text content
└── Data source configuration

Usage

  1. Navigate to Low-Code Platform → View Management (/admin/platform/view)
  2. Click New View
  3. Edit view layout (editor.html.twig)
  4. Configure component properties and data sources
  5. Preview (editor_section_properties.html.twig)
  6. Save and publish

Data Source Binding

View data sources are configured via the DataSource.php entity:

  • Entity Data Source: Bind to dynamic model data
  • API Data Source: Call custom API endpoints
  • Static Data Source: Fixed data

Code Generation

Saving a view generates Twig template files in templates/views/:

templates/views/
├── hello/
│   └── 1_0/
│       ├── hello.html.twig
│       └── hello.design.twig
└── organization/
    └── post_management/
        └── 1_0/
            ├── post_management.html.twig
            └── post_management.design.twig

Generated templates can be used directly or further customized.

  • FormFieldBuilderService.php: Form field construction
  • ViewFolderType.php, ViewType.php: Form type definitions

Open Source under MIT | Copyright © 2026 Doggy