Layered Architecture
Powersheet follows a three-tier architecture: a server extension running inside Polarion, a client application rendered in the browser, and a configuration layer stored as YAML files in the project SVN repository.Server Extension
The server extension runs as a plugin inside the Polarion application server. It is responsible for:- Query translation — Converting client requests into Polarion Lucene queries to retrieve work items
- Metadata generation — Reading domain model YAML and producing a typed metadata schema that the client uses for rendering and validation
- Save operations — Processing cell edits, new work item creation, and link management through the Polarion API
- Configuration management — Loading, parsing, and serving YAML configuration files from the repository
Client Application
The client application runs in the user’s browser and renders the interactive sheet. It receives the parsed configuration and metadata from the server, then builds the sheet UI with:- Hierarchical row expansion based on the domain model’s expansion paths
- Inline cell editing with type-aware editors (text, dropdowns, pickers)
- Column filtering and sorting including multi-column sort
- Row grouping by column values with collapsible headers
- Keyboard shortcuts for common operations such as adding rows, exporting, and freezing columns
Configuration Layer
All behavior in Powersheet is driven by two types of YAML files stored in the project SVN repository:| File Type | Purpose | Managed Via |
|---|---|---|
| Domain model | Defines entity types, properties, relationships, cardinality, and constraints | Administration > Nextedy POWERSHEET > Domain Models |
| Sheet configuration | Defines columns, views, formatters, column groups, and data sources | Administration > Nextedy POWERSHEET > Sheet Configurations |
How a Sheet Loads
When a user opens a Powersheet document, the following sequence occurs:- The document’s custom field identifies which sheet configuration to use
- The server loads the sheet configuration YAML and the referenced domain model YAML
- The server generates typed metadata from the domain model and sends it along with the configuration to the client
- The client initializes the sheet, builds columns from the configuration, and executes the data source query
- The query expands along the configured expansion paths, loading related entities at each level
- The sheet renders with all rows, columns, and formatting applied
Administration Integration
Powersheet registers four administration pages within Polarion:- Domain Models — File manager for editing domain model YAML files
- Sheet Configurations — File manager for editing sheet configuration YAML files
- Setup — Initial setup and configuration options
- License — License status and management
Related Pages
- Core Components — Details on each of the four building blocks
- Data Model vs Sheet Configuration — Why two YAML files are needed
- YAML Configuration System — How configuration files are discovered and loaded
- Creating Your First Data Model — Hands-on tutorial
Sources
Sources
KB ArticlesSupport TicketsSource Code
prod-powersheet-src/com.nextedy.powersheet.client/src/modules/Powersheet/Powersheet.tsxmodel.yamlpowersheet.yamlprod-powersheet-src/com.nextedy.powersheet/src/com/nextedy/powersheet/PowersheetService.javartm_model.yaml