Requirements

Documentation for Modules

Platform Settings — Requirements

Overview

A single business module (@libs-modules/platform-settings) that provides administrative CRUD pages for platform-level configuration entities: tax classes (fiscal), brands (brand-registry), and categories + tags (taxonomy). These entities are managed by existing core libraries that already provide services, models, mock APIs, and embeddable selectors. This module adds the missing management UI.

Location: libs/modules/platform-settings/ Import path: @libs-modules/platform-settings Base path: /settings Module ID: platform-settings


Functional Requirements

FR-1: Navigation

FR-2: Tax Classes (Basic CRUD)

List page (/settings/fiscal):

Form (dialog or inline):

FR-3: Brands (Basic CRUD)

List page (/settings/brands):

Form (dialog or inline):

FR-4: Categories (Full CRUD)

List/Tree page (/settings/taxonomy/categories):

Detail page (/settings/taxonomy/categories/:id):

Form (/settings/taxonomy/categories/create, /settings/taxonomy/categories/:id/edit):

FR-5: Tags (Basic CRUD)

List page (/settings/taxonomy/tags):

Form (dialog or inline):


Non-Functional Requirements

NFR-1: Architecture Compliance

NFR-2: Permissions

Permission Description
settings:read View all settings pages
settings:fiscal:manage Create/edit/delete tax classes
settings:brands:manage Create/edit/delete brands
settings:taxonomy:manage Create/edit/delete categories and tags

NFR-3: Events

NFR-4: Mock Integration

NFR-5: Reuse


User Stories

Tax Classes

Brands

Categories

Tags


Open Questions

  1. Scopes: Should the category scope list be dynamic (discovered from data) or hardcoded (product, document)?
  2. Category move: Should moving a category be drag-and-drop in the tree or a "Move to..." action with a selector?
  3. Brand logo: Since brands use logoId (string reference), should the logo upload work like product media (entity media section)?
  4. Tag color: Simple hex input or a predefined palette picker?

Dependencies

Consumes (already exist):