Skip to content

Components Serialization #350

Description

@dwong2708

Description

The goal is to structure the component directories and their respective TOML files based on each component’s namespace, type, and identifier.

Currently, the initial structure of the lp_dump output looks like this:

Axim2025-06-04/
├── entities/
│ └── fun-unit-36c349.toml
└── package.toml

We aim to evolve this structure to better reflect the metadata and hierarchy of components.


Acceptance Criteria

  • Add a folder named after the namespace of the component type.
  • Inside the namespace folder, add another folder with the component type name.
  • Within that, add a folder for the component identifier (format to be defined).
  • Include the component’s TOML file containing all the basic component metadata.
  • If versioned data is available, it should be nested under a component_versions/<version>/ directory inside the component identifier folder.

Target Directory Structure Example

Axim2025-06-04/
├── entities/
│   ├── fun-unit-36c349.toml
│   └── xblock.v1/
│       └── html/
│           ├── i-dont-like-the-sidebar-aa1645ade4a7/
│           │   └── component_versions/
│           │       └── v3/
│           └── i-dont-like-the-sidebar-aa1645ade4a7.toml
└── package.toml

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions