Skip to content

Plugins system for SciCat FE #1519

Open
@Ingvord

Description

@Ingvord

As #1505 shows one can already have quite isolated "plugins" in SciCat FE. However real plugins system requires some more efforts.

Here is how I see plugins roadmap in general:

Extract TypeScript Definitions:

Identify and extract necessary TypeScript definitions from the SciCat frontend. For instance, DatasetState definition or e.g. DataSet itself etc

Create a shared types package (e.g., scicat-shared-types).

For any given plugin:

Set Up New Angular Project:

  • Create a new Angular project for the generic component.

  • Implement the component using the shared types.

Integrate Shared Types:

  • Install the scicat-shared-types package in the new plugin project.

  • Utilize the shared types in the component.

Publish the Plugin:

  • Build and publish the plugin to npm or any npm compatible registry (e.g. GitHub).

Update SciCat FE:

  • Install the new plugin and shared types package.

  • Update import paths and integrate the plugin into the SciCat frontend.

An interesting point is to extract those scicat-shared-types. Ideally those has to be generated from common schema or sdk

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions