Summary
Prompts used in automatic documentation generation
Overview documentation
For System introduction overview
Give a brief high level system overview and its purpose using the provided context for this program, keep it detailed, concise and confident.
For High Level Doc creation
Based on the provided code module, generate a comprehensive analysis as follows:
- **Module Name**: Identify the module with fullpath for module file.
- **Primary Objectives**: Define its purpose.
- **Critical Functions**: List main methods/functions and their roles.
- **Key Variables**: Point out essential variables.
- **Interdependencies**: Note interactions with other system components.
- **Core vs. Auxiliary Operations**: Differentiate main operations from auxiliary ones.
- **Operational Sequence**: Describe any distinct flow.
- **Usage**: Discuss how it is used.
- **Assumptions**: List any assumptions made.
For Mermaid Diagram creation
Create a basic level-1 Data Flow Diagram (DFD) in Mermaid js syntax. Do not include parameters in function calls.
For Mermaid Diagram fix syntax
# Mermaid Flowchart Syntax Cheat Sheet
This cheat sheet provides a concise reference for the syntax used in Mermaid flowcharts. Mermaid flowcharts enable the creation of complex diagrams using simple text-based language.
## Basic Structure
- **Nodes**: Represented by geometric shapes.
- **Edges**: Arrows or lines connecting nodes.
## Syntax for Nodes
1. **Standard Node**: `id`
flowchart LR id
2. **Node with Text**: `id1[Text]`
flowchart LR id1\[This is text\]
3. **Node Shapes**:
- **Round Edges**: `id1(Text)`
- **Stadium Shape**: `id1([Text])`
- **Subroutine Shape**: `id1[[Text]]`
- **Cylindrical**: `id1[(Text)]`
- **Circle**: `id1((Text))`
- **Asymmetric**: `id1>This is text]`
- **Rhombus**: `id1{Text}`
- **Hexagon**: `id1{{Text}}`
- **Parallelogram**: `id1[/Text/]`
- **Alternate Parallelogram**: `id1[\Text\]`
- **Trapezoid**: `id1[/Text\]`
- **Alternate Trapezoid**: `id1[\Text/]`
- **Double Circle**: `id1(((Text)))`
## Syntax for Edges
1. **Standard Arrow**: `A --> B`
2. **Open Link**: `A --- B`
3. **Text on Links**: `A -- Text --> B` or `A ---|Text|B`
4. **Dotted Link**: `A -.-> B`
5. **Dotted Link with Text**: `A -. Text .-> B`
6. **Thick Link**: `A ==> B`
7. **Thick Link with Text**: `A == Text ==> B`
8. **Invisible Link**: `A ~~~ B`
9. **Chaining of Links**: `A -- text --> B -- text2 --> C`
10. **Multi Directional Arrows**: `A <--> B`, `A o--o B`, `A x--x B`
## Special Characters and Unicode
- Enclose troublesome characters or Unicode text in quotes: `id1["Text (with special characters)"]`
## Subgraphs
- Basic structure:
subgraph title
node definitions
end
## Styling
- **Styling Nodes and Edges**: Use `style` keyword.
- **Classes**: Define with `classDef` and apply with `class` or `:::` operator.
- **CSS Classes**: Define in HTML and apply in Mermaid.
- **Default Class**: Applies to all unstyled elements.
## Interaction and Comments
- **Interactive Elements**: Use `click` keyword for binding events.
- **Comments**: Preface with `%%` to ignore in rendering.
## Configuration
- **Renderer**: `%%{init: {"flowchart": {"defaultRenderer": "elk"}} }%%`
- **Width**: Adjust with `mermaid.flowchartConfig = { width: '100%' }`
## Example Usage
Given your example, here's the breakdown:
flowchart LR A\[PostgresStorageConnector\] -- insert --> B((Database)) A -- get --> B A -- delete --> B A -- query --> B A -- get_all --> B C\[LanceDBConnector\] -- insert --> B C -- get --> B C -- delete --> B() C -- query --> B C -- get_all --> B
- `A[PostgresStorageConnector]` and `C[LanceDBConnector]`: Nodes with text.
- `B((Database))`: Circle node with text.
- `-- insert -->`: Arrow with text.
- `-- get -->`, `-- delete -->`, `-- query -->`, `-- get_all -->`: Standard arrows.
This syntax is valid in Mermaid and will create a flowchart with nodes and directed edges as described.