Skip to content

Commit 39bf9f3

Browse files
committed
update docs (0.17.0)
1 parent 00e362f commit 39bf9f3

File tree

6 files changed

+63
-35
lines changed

6 files changed

+63
-35
lines changed

readme.md renamed to README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@
1010
<a href="https://interro.bot/">InterroBot</a>
1111
<p>
1212

13-
Your web crawler just got superpowers. InterroBot plugins transform your web crawler into a customizable data powerhouse, unleashing unlimited potential for data extraction and analysis.
13+
InterroBot plugins transform your web crawler into, well... anything you want. With unrestricted API crawl data access, Interrobot plugins can bring your website analysis concepts to life.
1414

15-
InterroBot plugins are simple HTML/JS/CSS pages that transform raw web crawl data into profound insights, stunning visualizations, and interactive dashboards. With our flexible API, you can create custom plugins that analyze website content across entire domains, connecting with analytics, LLMs, or your favorite SaaS for deeper insights.
15+
InterroBot plugins are simple HTML/JS/CSS pages that turn crawl data into insights, stunning visualizations, and interactive dashboards. With our flexible API, you can create custom plugins that analyze website content across entire domains, connecting with analytics, LLMs, or your favorite SaaS for deeper insights.
1616

17-
Our plugin ecosystem is designed for versatility. Whether you're building proprietary tools, developing plugins for clients, or contributing to the open-source community, InterroBot plugins adapt to your needs. Available for Windows 10/11, macOS, and Android, our platform ensures your data analysis can happen wherever you work.
17+
The InterroBot plugin ecosystem is designed for power users. Whether you're building proprietary tools, developing plugins for clients, or contributing to the open-source community, InterroBot plugins adapt to your needs. Available for Windows 10/11, macOS, Linux, and Android, InterroBot plugins are everywhere you need them.
1818

1919
## How Does it Work?
2020

@@ -108,7 +108,7 @@ The above snippets are pulled (and gently modified) from a plugin in the reposit
108108
109109
## What data is available via API?
110110
111-
InterroBot's robust API provides plugin developers with access to crawled data, enabling deep analysis and useful customizations. This data forms the foundation of your plugin, allowing you to create insightful visualizations, perform complex analysis, or build interactive tools. Whether you're tracking SEO metrics, analyzing content structures, or developing custom reporting tools, our API offers the flexibility and depth you need. Below is an overview of the key data points available, organized by API endpoint:
111+
InterroBot's API provides developers with access to crawled data, enabling analysis and useful customizations. This data allows you to create insightful visualizations, perform complex analysis, or build interactive tools. Whether you're tracking SEO metrics, analyzing content structures, or developing custom reporting tools, our API offers the flexibility and depth you need. Below is an overview of the key data points available, organized by API endpoint:
112112
113113
### GetProjects
114114

dist/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "interrobot-plugin",
3-
"version": "0.16.0",
3+
"version": "0.17.0",
44
"description": "Used in the creation of plugins (aka reports) that present data or visualizations for a website in aggregate, across site content. For use with InterroBot application.",
55
"main": "js/commonjs/interrobot-plugin.js",
66
"module": "js/es6/interrobot-plugin.js",

docs-rtd/source/index.rst

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -20,21 +20,21 @@
2020
interrobot-plugin
2121
=============================================
2222

23-
Your web crawler just got superpowers. InterroBot plugins transform your
24-
web crawler into a customizable data powerhouse, unleashing unlimited
25-
potential for data extraction and analysis.
26-
27-
InterroBot plugins are simple HTML/JS/CSS pages that transform raw web
28-
crawl data into profound insights, stunning visualizations, and
29-
interactive dashboards. With our flexible API, you can create custom
30-
plugins that analyze website content across entire domains, connecting
31-
with analytics, LLMs, or your favorite SaaS for deeper insights.
32-
33-
Our plugin ecosystem is designed for versatility. Whether youre
34-
building proprietary tools, developing plugins for clients, or
35-
contributing to the open-source community, InterroBot plugins adapt to
36-
your needs. Available for Windows 10/11, macOS, and Android, our
37-
platform ensures your data analysis can happen wherever you work.
23+
InterroBot plugins transform your web crawler into a customizable data
24+
powerhouse, with the capability to bring your concepts for website analysis
25+
to life.
26+
27+
InterroBot plugins are simple HTML/JS/CSS pages that turn crawl data into
28+
insights, stunning visualizations, and interactive dashboards. With our
29+
flexible API, you can create custom plugins that analyze website content
30+
across entire domains, connecting with analytics, LLMs, or your favorite
31+
SaaS for deeper insights.
32+
33+
The InterroBot plugin ecosystem is designed for power users. Whether you're
34+
building proprietary tools, developing plugins for clients, or contributing
35+
to the open-source community, InterroBot plugins adapt to your needs.
36+
Available for Windows 10/11, macOS, Linux, and Android, InterroBot plugins
37+
are everywhere you need them.
3838

3939
How Does it Work?
4040
-----------------
@@ -52,7 +52,7 @@ and a script extending the Plugin base class.
5252
5353
// TypeScript vs. JavaScript, both are fine. See examples.
5454
import { Plugin } from "./src/ts/core/plugin";
55-
class BasicExamplePlugin extends Plugin {
55+
class BasicExamplePlugin extends Plugin {
5656
static meta = {
5757
"title": "Example Plugin",
5858
"category": "Example",
@@ -63,7 +63,7 @@ and a script extending the Plugin base class.
6363
};
6464
constructor() {
6565
super();
66-
// index() has nothing to do with the crawl index, btw. it is
66+
// index() has nothing to do with the crawl index, btw. it is
6767
// the plugin index (think index.html), a view that shows by
6868
// default, and would generally consist of a form or visualization.
6969
this.index();
@@ -82,10 +82,10 @@ default ``index()`` behavior, rendering your page however you wish.
8282
// add your form and supporting HTML
8383
this.render(`<div>HTML</div>`);
8484
// initialize the plugin within InterroBot, from within iframe
85-
await this.initData({}, []);
85+
await this.initData({}, []);
8686
// add handlers to the form
8787
const button = document.querySelector("button");
88-
button.addEventListener("click", async (ev) => {
88+
button.addEventListener("click", async (ev) => {
8989
await this.process(); // where process() is a form handler
9090
});
9191
}
@@ -100,24 +100,24 @@ the exampleResultsHandler.
100100
// gather title words and running counts with a result handler
101101
const titleWords: Map<string, number> = new Map<string, number>();
102102
let resultsMap: Map<number, SearchResult>;
103-
const exampleResultHandler = async (result: SearchResult,
103+
const exampleResultHandler = async (result: SearchResult,
104104
titleWordsMap: Map<string, number>) => {
105105
const terms: string[] = result.name.trim().split(/[\s\-—]+/g);
106-
terms.forEach(term => titleWordsMap.set(term,
106+
terms.forEach(term => titleWordsMap.set(term,
107107
(titleWordsMap.get(term) ?? 0) + 1));
108108
}
109109
// projectId comes for free as a member of Plugin
110110
const projectId: number = this.getProjectId();
111111
// anything you put into InterroBot search, field or fulltext works
112112
// here we limit to HTML documents, which will have a <title> -> name
113113
const freeQueryString: string = "headers: text/html";
114-
// pipe delimited fields you want retrieved. id and url come with
114+
// pipe delimited fields you want retrieved. id and url come with
115115
// the base model, everything else must be requested explicitly
116116
const fields: string = "name";
117-
const internalHtmlPagesQuery = new SearchQuery(projectId,
117+
const internalHtmlPagesQuery = new SearchQuery(projectId,
118118
freeQueryString, fields, SearchQueryType.Any, false);
119119
// run each SearchResult through its handler, and we're done processing
120-
await Search.execute(internalHtmlPagesQuery, resultsMap, "Processing…",
120+
await Search.execute(internalHtmlPagesQuery, resultsMap, "Processing…",
121121
async (result: SearchResult) => {
122122
await exampleResultHandler(result, titleWords);
123123
}

docs/index.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@
88
<a href="https://interro.bot/plugins/">Plugins</a> ·
99
<a href="https://interro.bot/">InterroBot</a>
1010
<p>
11-
<p>Your web crawler just got superpowers. InterroBot plugins transform your web crawler into a customizable data powerhouse, unleashing unlimited potential for data extraction and analysis.</p>
12-
<p>InterroBot plugins are simple HTML/JS/CSS pages that transform raw web crawl data into profound insights, stunning visualizations, and interactive dashboards. With our flexible API, you can create custom plugins that analyze website content across entire domains, connecting with analytics, LLMs, or your favorite SaaS for deeper insights.</p>
13-
<p>Our plugin ecosystem is designed for versatility. Whether you're building proprietary tools, developing plugins for clients, or contributing to the open-source community, InterroBot plugins adapt to your needs. Available for Windows 10/11, macOS, and Android, our platform ensures your data analysis can happen wherever you work.</p>
11+
<p>InterroBot plugins transform your web crawler into, well... anything you want. With unrestricted API crawl data access, Interrobot plugins can bring your website analysis concepts to life.</p>
12+
<p>InterroBot plugins are simple HTML/JS/CSS pages that turn crawl data into insights, stunning visualizations, and interactive dashboards. With our flexible API, you can create custom plugins that analyze website content across entire domains, connecting with analytics, LLMs, or your favorite SaaS for deeper insights.</p>
13+
<p>The InterroBot plugin ecosystem is designed for power users. Whether you're building proprietary tools, developing plugins for clients, or contributing to the open-source community, InterroBot plugins adapt to your needs. Available for Windows 10/11, macOS, Linux, and Android, InterroBot plugins are everywhere you need them.</p>
1414
<a id="md:how-does-it-work" class="tsd-anchor"></a><h2 class="tsd-anchor-link">How Does it Work?<a href="#md:how-does-it-work" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p>InterroBot hosts an iframe of your webpage and exposes an API from which you can pull data down for analysis.</p>
1515
<p>If you're familiar with vanilla TypeScript or JavaScript, creating a custom plugin script for InterroBot is remarkably straight forward. First you start with a <a href="https://raw.githubusercontent.com/interrobot/interrobot-plugin/refs/heads/master/examples/vanillajs/basic.html" target="_blank" class="external">bare-bones HTML file</a> and a script extending the Plugin base class.</p>
1616
<pre><code class="javascript"><span class="hl-0">// TypeScript vs. JavaScript, both are fine. See examples.</span><br/><span class="hl-1">import</span><span class="hl-2"> { </span><span class="hl-3">Plugin</span><span class="hl-2"> } </span><span class="hl-1">from</span><span class="hl-2"> </span><span class="hl-4">&quot;./src/ts/core/plugin&quot;</span><span class="hl-2">;</span><br/><span class="hl-5">class</span><span class="hl-2"> </span><span class="hl-6">BasicExamplePlugin</span><span class="hl-2"> </span><span class="hl-5">extends</span><span class="hl-2"> </span><span class="hl-6">Plugin</span><span class="hl-2"> {</span><br/><span class="hl-2"> </span><span class="hl-5">static</span><span class="hl-2"> </span><span class="hl-3">meta</span><span class="hl-2"> = {</span><br/><span class="hl-2"> </span><span class="hl-4">&quot;title&quot;</span><span class="hl-3">:</span><span class="hl-2"> </span><span class="hl-4">&quot;Example Plugin&quot;</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-4">&quot;category&quot;</span><span class="hl-3">:</span><span class="hl-2"> </span><span class="hl-4">&quot;Example&quot;</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-4">&quot;version&quot;</span><span class="hl-3">:</span><span class="hl-2"> </span><span class="hl-4">&quot;1.0.0&quot;</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-4">&quot;author&quot;</span><span class="hl-3">:</span><span class="hl-2"> </span><span class="hl-4">&quot;InterroBot&quot;</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-4">&quot;synopsis&quot;</span><span class="hl-3">:</span><span class="hl-2"> </span><span class="hl-4">`a basic plugin example`</span><span class="hl-2">,</span><br/><span class="hl-2"> </span><span class="hl-4">&quot;description&quot;</span><span class="hl-3">:</span><span class="hl-2"> </span><span class="hl-4">`This example is as simple as it gets.`</span><span class="hl-2">,</span><br/><span class="hl-2"> };</span><br/><span class="hl-2"> </span><span class="hl-5">constructor</span><span class="hl-2">() {</span><br/><span class="hl-2"> </span><span class="hl-5">super</span><span class="hl-2">();</span><br/><span class="hl-2"> </span><span class="hl-0">// index() has nothing to do with the crawl index, btw. it is</span><br/><span class="hl-2"> </span><span class="hl-0">// the plugin index (think index.html), a view that shows by</span><br/><span class="hl-2"> </span><span class="hl-0">// default, and would generally consist of a form or visualization.</span><br/><span class="hl-2"> </span><span class="hl-5">this</span><span class="hl-2">.</span><span class="hl-7">index</span><span class="hl-2">();</span><br/><span class="hl-2"> }</span><br/><span class="hl-2">}</span><br/><span class="hl-0">// configure to initialize when the page is ready</span><br/><span class="hl-3">Plugin</span><span class="hl-2">.</span><span class="hl-7">initialize</span><span class="hl-2">(</span><span class="hl-3">BasicExamplePlugin</span><span class="hl-2">);</span>
@@ -27,7 +27,7 @@
2727
</code><button type="button">Copy</button></pre>
2828

2929
<p>The above snippets are pulled (and gently modified) from a plugin in the repository, <a href="https://github.com/interrobot/interrobot-plugin/blob/master/examples/vanillajs/basic.js" target="_blank" class="external">basic.js</a>. For more ideas getting started, check out the <a href="https://github.com/interrobot/interrobot-plugin/blob/master/examples/" target="_blank" class="external">examples</a> directory.</p>
30-
<a id="md:what-data-is-available-via-api" class="tsd-anchor"></a><h2 class="tsd-anchor-link">What data is available via API?<a href="#md:what-data-is-available-via-api" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p>InterroBot's robust API provides plugin developers with access to crawled data, enabling deep analysis and useful customizations. This data forms the foundation of your plugin, allowing you to create insightful visualizations, perform complex analysis, or build interactive tools. Whether you're tracking SEO metrics, analyzing content structures, or developing custom reporting tools, our API offers the flexibility and depth you need. Below is an overview of the key data points available, organized by API endpoint:</p>
30+
<a id="md:what-data-is-available-via-api" class="tsd-anchor"></a><h2 class="tsd-anchor-link">What data is available via API?<a href="#md:what-data-is-available-via-api" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h2><p>InterroBot's API provides developers with access to crawled data, enabling analysis and useful customizations. This data allows you to create insightful visualizations, perform complex analysis, or build interactive tools. Whether you're tracking SEO metrics, analyzing content structures, or developing custom reporting tools, our API offers the flexibility and depth you need. Below is an overview of the key data points available, organized by API endpoint:</p>
3131
<a id="md:getprojects" class="tsd-anchor"></a><h3 class="tsd-anchor-link">GetProjects<a href="#md:getprojects" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="assets/icons.svg#icon-anchor"></use></svg></a></h3><p>Retrieves a list of projects using the Plugin API.</p>
3232
<p><strong>Optional Fields</strong></p>
3333
<table>

package.json

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
{
2+
"name": "interrobot-plugin",
3+
"version": "0.17.0",
4+
"description": "Used in the creation of plugins (aka reports) that present data or visualizations for a website in aggregate, across site content. For use with InterroBot application.",
5+
"main": "js/commonjs/interrobot-plugin.js",
6+
"module": "js/es6/interrobot-plugin.js",
7+
"repository": {
8+
"type": "git",
9+
"url": "git+https://github.com/interrobot/interrobot-plugin.git"
10+
},
11+
"scripts": {
12+
"docs": "typedoc --entryPointStrategy expand --entryPoints \"src/**/*.ts\" --customCss ./docs-theme/interrobot-plugin.css"
13+
},
14+
"files": [
15+
"js"
16+
],
17+
"keywords": [
18+
"javascript",
19+
"InterroBot",
20+
"plugin",
21+
"webdev",
22+
"SEO",
23+
"crawler",
24+
"spider"
25+
],
26+
"author": "Ben Caulfield",
27+
"license": "MPL-2.0"
28+
}

typedoc.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@
33
"navigationLinks": {
44
"GitHub": "https://github.com/interrobot/interrobot-plugin",
55
"InterroBot": "https://interro.bot"
6-
76
},
87
"titleLink": "https://interrobot.github.io/interrobot-plugin/",
9-
"entryPoints": ["./src/ts"],
8+
"entryPointStrategy": "expand",
9+
"entryPoints": ["src/**/*.ts"],
1010
"out": "docs"
1111
}

0 commit comments

Comments
 (0)