Skip to content

Commit

Permalink
Update plugin pages and urls
Browse files Browse the repository at this point in the history
  • Loading branch information
cremarco committed Jul 26, 2024
1 parent d4fcd03 commit 7555e52
Show file tree
Hide file tree
Showing 5 changed files with 20 additions and 133 deletions.
2 changes: 1 addition & 1 deletion docs/getting-started/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ This document describes the configuration file parameters for MantisTable UI. Th
PLUGINS_PORT="port"
```

The port on which the plugins service will run.
The port on which the plugins service (Doker container) will run.

## Configuration File Example

Expand Down
127 changes: 2 additions & 125 deletions docs/plug-in/export.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,61 +2,10 @@
sidebar_position: 1
---

# Export
# Export Plugins

MantisTable UI is designed with extensibility in mind, allowing users to enhance its capabilities through the use of plugins. There are three main types of plugins that can be integrated into MantisTable UI:

1. **Export Plugins**
2. **Add-on Plugins**
3. **Transformation Plugins**

## Plugin Types

### 1. Export Plugins

**Description:**
Export plugins enable MantisTable UI to export data and annotation in user-defined formats.

**Use Cases:**
- Exporting tables to custom file formats (e.g., JSON, XML, CSV)
- Generating reports in PDF or other document formats
- Custom serialization of table data for integration with other systems

### 2. Add-on Plugins

**Description:**
Add-on plugins use semantic annotations to process table data, providing additional functionalities such as lexicalization and visualization. These plugins enhance the interpretability and presentation of the data.

**Use Cases:**
- Visualizing table data in charts or graphs
- Generating natural language descriptions of table content
- Integrating with external semantic services for enriched data processing

### 3. Transformation Plugins

**Description:**
Transformation plugins perform various transformations on table data, such as data cleaning and data transformation. These plugins help in improving data quality and reshaping data to meet specific analysis needs.

**Use Cases:**
- Cleaning and normalizing data entries
- Transforming table structures
- Applying complex data transformations and computations

## Plugin Configuration

Plugins are configured through the MantisTable UI configuration file (`.env`). The relevant parameters for configuring plugins include the base URL for the plugins service and the specific settings for each type of plugin.

### Example Configuration

```env
PLUGINS_PORT="5001"
EXPORT_PLUGINS_DIR="/path/to/export/plugins"
ADDON_PLUGINS_DIR="/path/to/addon/plugins"
TRANSFORMATION_PLUGINS_DIR="/path/to/transformation/plugins"
```

## Developing Plugins

### General Guidelines

1. **Isolation:** Each plugin should operate independently and not interfere with other plugins or the core functionality of MantisTable UI.
Expand Down Expand Up @@ -97,74 +46,6 @@ module.exports = {
}
```

### Add-on Plugin Example

**Structure:**

```
/addon-plugin-example
/src
index.js
/config
config.json
/docs
README.md
```

**index.js:**

```javascript
module.exports = {
process: (annotatedTable) => {
// Implement custom processing functionality here
return processedData;
}
};
```

**config.json:**

```json
{
"name": "semantic-visualizer",
"description": "Add-on plugin for visualizing annotated tables"
}
```

### Transformation Plugin Example

**Structure:**

```
/transformation-plugin-example
/src
index.js
/config
config.json
/docs
README.md
```

**index.js:**

```javascript
module.exports = {
transform: (tableData) => {
// Implement custom transformation functionality here
return transformedData;
}
};
```

**config.json:**

```json
{
"name": "data-cleaner",
"description": "Transformation plugin for cleaning and normalizing data"
}
```

## Using Plugins in MantisTable UI

1. **Install the Plugin:**
Expand All @@ -178,8 +59,4 @@ module.exports = {
3. **Access Plugin Functionality:**
- Export plugins can be accessed through the export menu in the UI.
- Add-on plugins are typically accessed through semantic processing options.
- Transformation plugins can be applied through the data transformation tools in the UI.

## Conclusion

The plugin system in MantisTable UI provides a flexible and powerful way to extend the functionality of the application. By developing custom export, add-on, and transformation plugins, users can tailor MantisTable UI to meet their specific needs and enhance their data management workflows.
- Transformation plugins can be applied through the data transformation tools in the UI.
18 changes: 14 additions & 4 deletions docs/plug-in/index.mdx
Original file line number Diff line number Diff line change
@@ -1,17 +1,25 @@
# Plug-in
# Plugin

MantisTable UI is designed with extensibility in mind, allowing users to enhance its capabilities through the use of plugins. There are three main types of plugins that can be integrated into MantisTable UI:
MantisTable UI is designed with extensibility in mind, allowing users to enhance its capabilities through the use of plugins.
There are three main types of plugins that can be integrated:

1. **Export Plugins**
2. **Add-on Plugins**
3. **Transformation Plugins**

To ensure security and stability, the plugins are executed in isolation within Docker containers.
This approach guarantees that each plugin operates in an independent environment, preventing interference between plugins and the core system.

:::warning
For correct execution of the plugins, remember to set the corresponding [port](/docs/getting-started/configuration#plugins).
:::

## Plugin Types

### 1. Export Plugins

**Description:**
Export plugins enable MantisTable UI to export data and annotation in user-defined formats.
Export plugins enable MantisTable UI to export data and annotations in user-defined formats.

**Use Cases:**
- Exporting tables to custom file formats (e.g., JSON, XML, CSV)
Expand All @@ -21,7 +29,9 @@ Export plugins enable MantisTable UI to export data and annotation in user-defin
### 2. Add-on Plugins

**Description:**
Add-on plugins use semantic annotations to process table data, providing additional functionalities such as lexicalization and visualization. These plugins enhance the interpretability and presentation of the data.
Add-on plugins use semantic annotations to process table data, providing additional functionalities such as lexicalization and visualization.
These plugins enhance the interpretability and presentation of the data.


**Use Cases:**
- Visualizing table data in charts or graphs
Expand Down
6 changes: 3 additions & 3 deletions docusaurus.config.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import {themes as prismThemes} from 'prism-react-renderer';
import type {Config} from '@docusaurus/types';
import type * as Preset from '@docusaurus/preset-classic';
import tailwindPlugin from './plugins/tailwind-config.cjs';
import tailwindPlugin from './plugins/tailwind-plugin.cjs';

const config: Config = {
title: 'MantisTable UI',
Expand All @@ -12,7 +12,7 @@ const config: Config = {
url: 'https://unimibinside.github.io',
// Set the /<baseUrl>/ pathname under which your site is served
// For GitHub pages deployment, it is often '/<projectName>/'
baseUrl: '/mantistable-docs/',
baseUrl: '/mantistable-ui-docs/',

// GitHub pages deployment config.
// If you aren't using GitHub pages, you don't need these.
Expand Down Expand Up @@ -73,7 +73,7 @@ const config: Config = {
label: 'Documentation',
},
{
href: 'https://github.com/UNIMIBInside/mantistable',
href: 'https://github.com/UNIMIBInside/mantistable-ui',
label: 'GitHub',
position: 'right',
},
Expand Down
File renamed without changes.

0 comments on commit 7555e52

Please sign in to comment.