elsa-workflows / elsa-workflows/elsa-studio

Design: Settings Definition API & Conventions

Open
#704 0 comments 0 reactions 0 assignees View on GitHub
triaged
Dominant language
C#
Stars
301
Forks
181
Avg merge
17h 12m
Merged PRs (30d)
42

Description

### Why
Define clear settings definition structure, scoping & naming conventions, for storing user/state in Elsa Studio. Make it easy to add, validate, and version settings at any layer. Include best-practices for Blazor (and MudBlazor), key naming, model versioning, and approach to future server-profile extensions.

### Acceptance Criteria
- Document:
- Setting definition API (C# record/class structure example)
- Supported persistence modes (local, session)
- Storage key naming conventions (see epic)
- Versioning and migration approach
- Validation patterns
- Document future extensibility to add Profile (server) mode
- Example: definition for `theme`, `shell geometry`, `shell session toggles`, `table view state`
- Scoping per screen/component
- Where to locate defaults

### Deliverables
- ADR in /docs or /src/framework/Core/Documentation/
- Example C# setting record(s)
- Diagram if possible

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the requested ADR locations in /docs and /src/framework/Core/Documentation/, then map the acceptance criteria for the Settings Definition API, persistence modes, naming, versioning, validation, and scoping. Done means an ADR with the requested C# examples, settings examples, future Profile-mode extension, defaults guidance, and a diagram if possible.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.