# tahahachana/openseo architecture

> Architecture diagram of the GitHub repository tahahachana/openseo, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-12). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/tahahachana/openseo
- Repository: https://github.com/tahahachana/openseo

## Overview

OpenSEO is described as an SEO tool powered by WebSharper, but the supplied tree contains only browser-side WebSharper runtime assets in two mirrored directories; it exposes no SEO-specific implementation or user-to-result workflow. The graph therefore records the product and the substantial runtime modules named by the source index, without inferring calls between them. The README supports the framework relationship; module behavior is only partially sampled.

Main entry points: [`Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.js`](https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.js) (WebSharper core)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_product["SEO product"]
  node_openseo["OpenSEO tool"]
end

subgraph group_runtime["WebSharper runtime"]
  node_sitelet_s["Sitelet runtime<br/>[Sitelet.js]"]
  node_sitelet_h["Sitelet runtime copy<br/>[Sitelet.js]"]
  node_websharper_s["WebSharper core"]
  node_websharper_h["WebSharper core copy"]
  node_collections_s["Collections"]
  node_collections_h["Collections copy"]
  node_control_s["Control"]
  node_control_h["Control copy"]
  node_reactive_s["Reactive"]
  node_reactive_h["Reactive copy"]
end

subgraph group_forms["Form UI"]
  node_html_s["HTML rendering"]
  node_html_h["HTML rendering copy"]
  node_formlet_s["Formlet API"]
  node_formlet_h["Formlet API copy"]
  node_form_s["Formlet UI"]
  node_form_h["Formlet UI copy"]
  node_piglets_s["Piglets"]
  node_piglets_h["Piglets copy"]
end

node_user(("SEO tool user"))

node_user -->|"uses"| node_openseo
node_openseo -->|"powered by"| node_websharper_s

click node_sitelet_s "https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/Sitelet.js"
click node_sitelet_h "https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/Sitelet.js"
click node_websharper_s "https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.js"
click node_websharper_h "https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.js"
click node_collections_s "https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Collections.js"
click node_collections_h "https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Collections.js"
click node_control_s "https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Control.js"
click node_control_h "https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Control.js"
click node_reactive_s "https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.Reactive.js"
click node_reactive_h "https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.Reactive.js"
click node_html_s "https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Html.js"
click node_html_h "https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Html.js"
click node_formlet_s "https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.Formlet.js"
click node_formlet_h "https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.Formlet.js"
click node_form_s "https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Formlet.js"
click node_form_h "https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Formlet.js"
click node_piglets_s "https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Piglets.js"
click node_piglets_h "https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Piglets.js"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_openseo,node_user toneBlue
class node_sitelet_s,node_sitelet_h,node_websharper_s,node_websharper_h,node_collections_s,node_collections_h,node_control_s,node_control_h,node_reactive_s,node_reactive_h toneAmber
class node_html_s,node_html_h,node_formlet_s,node_formlet_h,node_form_s,node_form_h,node_piglets_s,node_piglets_h toneMint
```

## Components

### SEO product

- **OpenSEO tool**

### WebSharper runtime

- [Sitelet runtime](https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/Sitelet.js): `Sitelet/Scripts/WebSharper/Sitelet.js`
- [Sitelet runtime copy](https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/Sitelet.js): `SiteletHost/Scripts/WebSharper/Sitelet.js`
- [WebSharper core](https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.js): `Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.js`
- [WebSharper core copy](https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.js): `SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.js`
- [Collections](https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Collections.js): `Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Collections.js`
- [Collections copy](https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Collections.js): `SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Collections.js`
- [Control](https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Control.js): `Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Control.js`
- [Control copy](https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Control.js): `SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Control.js`
- [Reactive](https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.Reactive.js): `Sitelet/Scripts/WebSharper/IntelliFactory.Reactive.js`
- [Reactive copy](https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.Reactive.js): `SiteletHost/Scripts/WebSharper/IntelliFactory.Reactive.js`

### Form UI

- [HTML rendering](https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Html.js): `Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Html.js`
- [HTML rendering copy](https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Html.js): `SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Html.js`
- [Formlet API](https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.Formlet.js): `Sitelet/Scripts/WebSharper/IntelliFactory.Formlet.js`
- [Formlet API copy](https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.Formlet.js): `SiteletHost/Scripts/WebSharper/IntelliFactory.Formlet.js`
- [Formlet UI](https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Formlet.js): `Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Formlet.js`
- [Formlet UI copy](https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Formlet.js): `SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Formlet.js`
- [Piglets](https://github.com/tahahachana/openseo/blob/master/Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Piglets.js): `Sitelet/Scripts/WebSharper/IntelliFactory.WebSharper.Piglets.js`
- [Piglets copy](https://github.com/tahahachana/openseo/blob/master/SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Piglets.js): `SiteletHost/Scripts/WebSharper/IntelliFactory.WebSharper.Piglets.js`

### Other components

- **SEO tool user**

## Connections

- SEO tool user → OpenSEO tool: uses
- OpenSEO tool → WebSharper core: powered by
