Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add regex filter #2

Closed
wants to merge 36 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
b0d398b
install doc link checker
bparks13 Aug 1, 2024
e9538ed
First test running DocLinkChecker
bparks13 Aug 1, 2024
0fda26c
Update links to match what DocLinkChecker expects
bparks13 Aug 1, 2024
8c8b682
Create DocLinkChecker.config
bparks13 Aug 1, 2024
ac734d7
Call DocLinkChecker.config
bparks13 Aug 1, 2024
ab4b7ef
Update DocLinkChecker.config
bparks13 Aug 1, 2024
b5b5b70
Update DocLinkChecker.config
bparks13 Aug 1, 2024
ceca053
Update DocLinkChecker.config
bparks13 Aug 1, 2024
8989b9b
Update tips_and_tricks.md
bparks13 Aug 1, 2024
f9408bc
Update DocLinkChecker.config
bparks13 Aug 1, 2024
8395e9d
Remove the articles folder; all folders should be specified from CLI
bparks13 Aug 1, 2024
cf3384d
Update build.yml
bparks13 Aug 1, 2024
584432b
Also check tutorials
bparks13 Aug 1, 2024
5e968ca
Update headstage64-tut.md
bparks13 Aug 1, 2024
79230a3
Update neuropixelsv1e-tut.md
bparks13 Aug 1, 2024
91d7cc1
Update neuropixelsv2e-tut.md
bparks13 Aug 1, 2024
a1b4b76
Update headstage64-tut.md
bparks13 Aug 1, 2024
4e3e53e
Update neuropixelsv1e-tut.md
bparks13 Aug 1, 2024
f3e8bee
Update neuropixelsv2e-tut.md
bparks13 Aug 1, 2024
0cb913f
Add lychee check for broken links in HTML pages
bparks13 Aug 1, 2024
0614636
test ubuntu
bparks13 Aug 1, 2024
58ee261
Update build.yml
bparks13 Aug 1, 2024
385e597
Update build.yml
bparks13 Aug 1, 2024
c719962
test ubuntu v2
bparks13 Aug 1, 2024
64c9732
Testing multiple jobs
bparks13 Aug 1, 2024
6ba1bfa
Update build.yml
bparks13 Aug 1, 2024
e28654d
Update build.yml
bparks13 Aug 1, 2024
c649624
Update build.yml
bparks13 Aug 1, 2024
e9e6ccf
Create .lycheeignore
bparks13 Aug 1, 2024
0c20ad3
Delete .github/workflows/.lycheeignore
bparks13 Aug 1, 2024
ef67e36
Update build.yml
bparks13 Aug 1, 2024
816dfa5
Create deploy.yml
bparks13 Aug 1, 2024
3c68ad0
Update build.yml
bparks13 Aug 1, 2024
9367092
Testing github actions (#1)
bparks13 Aug 2, 2024
30628ee
Add regex filter for published pages
bparks13 Aug 2, 2024
0330d01
Fix regex
bparks13 Aug 2, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .config/dotnet-tools.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@
"commands": [
"docfx"
]
},
"doclinkchecker": {
"version": "1.19.0",
"commands": [
"DocLinkChecker"
]
}
}
}
29 changes: 29 additions & 0 deletions .github/workflows/DocLinkChecker.config
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"DocumentationFiles": {
"src": ".",
"Files": [
"**/*.md",
"*.md"
],
"Exclude": [
"_site/*",
".bonsai/*",
"src/*"
]
},
"ResourceFolderNames": [
],
"DocLinkChecker": {
"RelativeLinkStrategy": "All",
"CheckForOrphanedResources": true,
"CleanupOrphanedResources": false,
"ValidatePipeTableFormatting": true,
"ValidateExternalLinks": true,
"ConcurrencyLevel": 5,
"MaxHttpRedirects": 20,
"ExternalLinkDurationWarning": 3000,
"WhitelistUrls": [
"http://localhost"
]
}
}
60 changes: 53 additions & 7 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@
name: Build docs

on:
workflow_dispatch:
push:
branches:
main
branches: [ main ]
pull_request:
branches: [ main ]

jobs:
build:
Expand All @@ -15,12 +15,19 @@ jobs:
uses: actions/[email protected]
with:
submodules: true

- name: Setup .NET Core SDK
uses: actions/[email protected]
with:
dotnet-version: 8.x

- name: Install DocLinkChecker
run: dotnet tool install DocLinkChecker

# Check for missing / broken links in the *.md files prior to building the website
- name: Check Documentation Links
run: dotnet DocLinkChecker -v -f .github/workflows/DocLinkChecker.config

- name: Setup DocFX
run: dotnet tool restore

Expand All @@ -29,17 +36,56 @@ jobs:
run: .\Setup.ps1

- name: Build Documentation
run: .\build.ps1

run: .\build.ps1 --logLevel Warning --warningsAsErrors

- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: _site
path: _site
if-no-files-found: error

check:
name: Check Links
runs-on: ubuntu-latest
needs: build
steps:
- name: Download Artifact
uses: actions/download-artifact@v4
with:
name: _site
path: _site

# This checks for missing / broken links in the *.html files after building the website.
# We need to run this step here to check that all auto-generated API pages have valid links too.
- name: Check HTML Links After Building
uses: lycheeverse/[email protected]
with:
args: --verbose --no-progress --base _site --exclude ^https://github\.com.*merge.* --exclude ^https://github\.com.*apiSpec.* '_site/**/*.html'
fail: true

deploy:
name: Deploy docs to gh-pages
runs-on: ubuntu-latest
needs: [ build, check ]
if: github.event_name == 'push'
steps:
- name: Download Artifact
uses: actions/download-artifact@v4
with:
name: _site
path: _site

- name: Checkout gh-pages
uses: actions/[email protected]
with:
ref: gh-pages
path: gh-pages

- name: Publish to github pages
uses: peaceiris/actions-gh-pages@v3.9.3
uses: peaceiris/actions-gh-pages@v4.0.0
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: _site
force_orphan: true

2 changes: 1 addition & 1 deletion apidoc/OpenEphys.Onix.ConfigureBreakoutBoard.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
uid: OpenEphys.Onix.ConfigureBreakoutBoard
uid: OpenEphys.Onix1.ConfigureBreakoutBoard
---

[!INCLUDE [Hub Template](hub_template.md)]
2 changes: 1 addition & 1 deletion apidoc/OpenEphys.Onix.ConfigureHeadstage64.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
uid: OpenEphys.Onix.ConfigureHeadstage64
uid: OpenEphys.Onix1.ConfigureHeadstage64
---

[!INCLUDE [Hub Template](hub_template.md)]
2 changes: 1 addition & 1 deletion apidoc/OpenEphys.Onix.ConfigureNeuropixelsV1eHeadstage.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
uid: OpenEphys.Onix.ConfigureNeuropixelsV1eHeadstage
uid: OpenEphys.Onix1.ConfigureNeuropixelsV1eHeadstage
---

[!INCLUDE [Hub Template](hub_template.md)]
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
uid: OpenEphys.Onix.ConfigureNeuropixelsV2eBetaHeadstage
uid: OpenEphys.Onix1.ConfigureNeuropixelsV2eBetaHeadstage
---

[!INCLUDE [Hub Template](hub_template.md)]
2 changes: 1 addition & 1 deletion apidoc/OpenEphys.Onix.ConfigureNeuropixelsV2eHeadstage.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
uid: OpenEphys.Onix.ConfigureNeuropixelsV2eHeadstage
uid: OpenEphys.Onix1.ConfigureNeuropixelsV2eHeadstage
---

[!INCLUDE [Hub Template](hub_template.md)]
3 changes: 0 additions & 3 deletions apidoc/OpenEphys_Onix_Bno055Data.md

This file was deleted.

3 changes: 0 additions & 3 deletions apidoc/OpenEphys_Onix_ConfigureBno055.md

This file was deleted.

12 changes: 6 additions & 6 deletions articles/getting-started/initialize_oni_context.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,22 @@ uid: InitializeOniContext
title: Initialize the ONI Context
---

The [`CreateContext`](xref:OpenEphys.Onix.CreateContext) operator initializes the acquisition context, and it should be the first node you add to your workflow as it provides access to the hardware device table for all other configuration operators. There are several different ways to find this node and add it to the workflow:
The [`CreateContext`](xref:OpenEphys.Onix1.CreateContext) operator initializes the acquisition context, and it should be the first node you add to your workflow as it provides access to the hardware device table for all other configuration operators. There are several different ways to find this node and add it to the workflow:

1. From the Bonsai editor, navigate to the toolbox on the left side of the screen and expand the **Source** section. Next, expand the **OpenEphys.Onix** section, and find the `CreateContext` line. The node can then be added by either double-clicking it, or dragging and dropping the node into the workflow.

![Search for CreateContext node manually](~/images/bonsai-editor-place-create-context-manually.png){width=700px}
![Search for CreateContext node manually](../../images/bonsai-editor-place-create-context-manually.png){width=700px}

2. Click on the textbox at the top of the toolbox on the left, or from Ctrl + E to focus on the textbox, and type `CreateContext` to search for the node. Same as (1), the node can be placed by double-clicking or dragging and dropping; additionally, if the `CreateContext` string is highlighted Enter can be pressed to place the node immediately.

![Search for CreateContext node from textbox](~/images/bonsai-editor-place-create-context-search.png){width=700px}
![Search for CreateContext node from textbox](../../images/bonsai-editor-place-create-context-search.png){width=700px}

3. Hover over the image of the [`CreateContext`](xref:OpenEphys.Onix.CreateContext) workflow below, and click on the clipboard icon in the top-right corner of the workflow image to copy the workflow to the clipboard. Navigate back to Bonsai, and paste the copied workflow into the active editor. Pasting can be done via Ctrl + V, or right-clicking in the editor and choosing **Paste**.
3. Hover over the image of the [`CreateContext`](xref:OpenEphys.Onix1.CreateContext) workflow below, and click on the clipboard icon in the top-right corner of the workflow image to copy the workflow to the clipboard. Navigate back to Bonsai, and paste the copied workflow into the active editor. Pasting can be done via Ctrl + V, or right-clicking in the editor and choosing **Paste**.

## CreateContext Workflow

This is a nominally functional workflow that provides access to the ONI context, from which all nodes can then be linked to and configured, while also demonstrating how a Breakout Board can be configured before finishing the configuration chain by placing a [`StartAcquisition`](xref:OpenEphys.Onix.StartAcquisition) node:
This is a nominally functional workflow that provides access to the ONI context, from which all nodes can then be linked to and configured, while also demonstrating how a Breakout Board can be configured before finishing the configuration chain by placing a [`StartAcquisition`](xref:OpenEphys.Onix1.StartAcquisition) node:

:::workflow
![CreateContext](~/workflows/operators/ConfigureBreakoutBoard.bonsai)
![CreateContext](../../workflows/operators/ConfigureBreakoutBoard.bonsai)
:::
2 changes: 1 addition & 1 deletion articles/getting-started/next_steps.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,6 @@ title: Next Steps

Continue browsing <xref:GettingStarted> and check out specific nodes on the left to see how to configure each node, as well as some ways to visualize data. Each page will have a fully functional workflow that can be copied into Bonsai to provide an easy starting point for generating data.

For more technical information on each node, head to the <xref:OpenEphys.Onix> to see a more developer-focused view of each node.
For more technical information on each node, head to the <xref:OpenEphys.Onix1> to see a more developer-focused view of each node.

More complex and in-depth tutorials for placing multiple nodes and moving towards generating data in an experimental setting can be found in the <xref:TutorialsLandingPage>.
6 changes: 3 additions & 3 deletions articles/getting-started/node_types.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ In Bonsai, all objects are called "nodes", and have a specific function associat

| Node Type | Description | Example ONIX nodes |
| --------- | ----------- | ------------------ |
| Source | Generate event streams from devices or files | [`CreateContext`](xref:OpenEphys.Onix.CreateContext), [`Bno055Data`](xref:OpenEphys.Onix.Bno055Data), [`NeuropixelsV1eData`](xref:OpenEphys.Onix.NeuropixelsV1eData) |
| Sink | Save data or trigger external outputs | [`ConfigureHeadstage64`](xref:OpenEphys.Onix.ConfigureHeadstage64), [`ConfigureNeuropixelsV1eHeadstage`](xref:OpenEphys.Onix.ConfigureNeuropixelsV1eHeadstage) |
| Combinator | Manage control flow or synchronize parallel inputs | [`StartAcquisition`](xref:OpenEphys.Onix.StartAcquisition) |
| Source | Generate event streams from devices or files | [`CreateContext`](xref:OpenEphys.Onix1.CreateContext), [`Bno055Data`](xref:OpenEphys.Onix1.Bno055Data), [`NeuropixelsV1eData`](xref:OpenEphys.Onix1.NeuropixelsV1eData) |
| Sink | Save data or trigger external outputs | [`ConfigureHeadstage64`](xref:OpenEphys.Onix1.ConfigureHeadstage64), [`ConfigureNeuropixelsV1eHeadstage`](xref:OpenEphys.Onix1.ConfigureNeuropixelsV1eHeadstage) |
| Combinator | Manage control flow or synchronize parallel inputs | [`StartAcquisition`](xref:OpenEphys.Onix1.StartAcquisition) |

Nodes are placed in the Bonsai editor and can be saved into a "workflow", which is a grouping of nodes and saved settings. This workflow can then be run to perform some task, depending on what nodes are placed.
8 changes: 4 additions & 4 deletions articles/getting-started/tips_and_tricks.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ The order of nodes is also important for which actions can be taken. In the tabl

| Goal | Clicks / Keystrokes | Description |
| ---- | ------------------- | ----------- |
| Link two nodes | Click and hold the first node, drag the cursor to the second node, and release | While dragging the cursor, it will temporarily change to a red symbol until there is a valid target (e.g., the second node), where it will change to an up arrow |
| Link two nodes | Click and hold the first node, drag the cursor to the second node, and release | While dragging the cursor, it will temporarily change to a red symbol until there is a valid target (e.g., the second node), where it will change to an up arrow |
| Link two nodes | Right-click the first node, and select **Create Connection**. Select the second node | While moving the cursor, it will change to an up arrow. A valid node target will change color when hovering over it |
| Link two nodes on placement | Click on a node in the editor to select it, then place a node using either method (1) or (2) above | If a node is currently selected in the editor when a new node is added, whether it is added by clicking and dragging, double-clicking, or pressing **Enter**, the newly placed node will be connected to the first node automatically |
| Unlink two nodes | Click the first node to select it, hold **Shift**, click and hold the first node, drag to the second node, and release | While dragging the cursor, it will temporarily change to a red symbol until there is a valid target (e.g., the second node), where it will change to an up arrow |
Expand All @@ -20,7 +20,7 @@ The order of nodes is also important for which actions can be taken. In the tabl
| Change order of nodes in a row | Hold **Ctrl**, click and hold the first node, drag to the right to the second node, and release | This action does not require that the node be selected prior to performing the action. This can change the order of any two nodes that are a part of the same row; it is not constrained to adjacent nodes. Note that if the new placement of the nodes is not valid (such as giving a `Source` node an input), it will knock the node of the current row and remove any connections |

> [!Note]
> In the context of `OpenEphys.Onix`, almost all workflows should have the top row containing a [`CreateContext`](xref:OpenEphys.Onix.CreateContext) node connected to an arbitrary number of `Configure*` nodes, finished with a [`StartAcquisition`](xref:OpenEphys.Onix.StartAcquisition) node. Subsequent rows can contain the corresponding `*Data` nodes configured above, and any processing / visualizing nodes needed.
> In the context of `OpenEphys.Onix1`, almost all workflows should have the top row containing a [`CreateContext`](xref:OpenEphys.Onix1.CreateContext) node connected to an arbitrary number of `Configure*` nodes, finished with a [`StartAcquisition`](xref:OpenEphys.Onix1.StartAcquisition) node. Subsequent rows can contain the corresponding `*Data` nodes configured above, and any processing / visualizing nodes needed.

<br>

Expand All @@ -29,6 +29,6 @@ The order of nodes is also important for which actions can be taken. In the tabl
Some nodes, specifically many of the `Configure*` nodes, can have a GUI attached to the node that allows for easy manipulation of **Configuration** properties in a graphical environment. These GUIs can be accessed by double-clicking on a node; if there is a GUI assigned to it, then it will be opened up in a new window. Please note that not all nodes have GUIs, but if you think that a node would benefit from having this functionality added please reach out to us.

> [!Note]
> GUIs are not part of the base `OpenEphys.Onix` library. To take advantage of this added functionality, you must install the accompanying `OpenEphys.Onix.Design` library using the Bonsai package manager.
> GUIs are not part of the base `OpenEphys.Onix1` library. To take advantage of this added functionality, you must install the accompanying `OpenEphys.Onix1.Design` library using the Bonsai package manager.

A number of Bonsai nodes also come shipped with GUIs, but similar to `OpenEphys.Onix`, the corresponding `*.Design` library must be installed before it can be leveraged.
A number of Bonsai nodes also come shipped with GUIs, but similar to `OpenEphys.Onix1`, the corresponding `*.Design` library must be installed before it can be leveraged.
2 changes: 1 addition & 1 deletion articles/hubs/breakoutboard.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ title: BreakoutBoard
isGuide: true
isHeadstage: true
headstage: BreakoutBoard
devices: [ { id: MemoryMonitor, file: device-memorymonitor }, { id: Heartbeat, file: device-heartbeat }, { id: DigitalIO, file: device-digitalio } , { id: AnalogIO, file: device-analogio } ]
devices: [ { id: MemoryMonitor, file: ~/articles/devices/memorymonitor }, { id: Heartbeat, file: ~/articles/devices/heartbeat }, { id: DigitalIO, file: ~/articles/devices/breakoutdigitalio } , { id: AnalogIO, file: ~/articles/devices/breakoutanalogio } ]
workflow: true
workflow_file: ~/workflows/hubs/BreakoutBoard.bonsai
---
2 changes: 1 addition & 1 deletion articles/hubs/headstage64.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ title: Headstage64
isGuide: true
isHeadstage: true
headstage: Headstage64
devices: [ { id: TS4231, file: device-ts4231 }, { id: RHD2164, file: device-rhd2164 }, { id: BNO055, file: device-bno055 } ]
devices: [ { id: TS4231, file: ~/articles/devices/ts4231 }, { id: RHD2164, file: ~/articles/devices/rhd2164 }, { id: BNO055, file: ~/articles/devices/bno055 } ]
workflow: true
workflow_file: ~/workflows/hubs/Headstage64.bonsai
---
2 changes: 1 addition & 1 deletion articles/hubs/neuropixelsv1e.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ title: NeuropixelsV1eHeadstage
isGuide: true
isHeadstage: true
headstage: NeuropixelsV1e
devices: [ { id: NeuropixelsV1e, file: device-neuropixelsv1e }, { id: BNO055, file: device-bno055_neuropixelsv1e } ]
devices: [ { id: NeuropixelsV1e, file: ~/articles/devices/neuropixelsv1e }, { id: BNO055, file: ~/articles/devices/bno055_neuropixelsv1e } ]
workflow: true
workflow_file: ~/workflows/hubs/NeuropixelsV1e.bonsai
---
2 changes: 1 addition & 1 deletion articles/hubs/neuropixelsv2e.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ title: NeuropixelsV2eHeadstage
isGuide: true
isHeadstage: true
headstage: NeuropixelsV2e
devices: [ { id: NeuropixelsV2e, file: device-neuropixelsv2e }, { id: BNO055, file: device-bno055_neuropixelsv2e } ]
devices: [ { id: NeuropixelsV2e, file: ~/articles/devices/neuropixelsv2e }, { id: BNO055, file: ~/articles/devices/bno055_neuropixelsv2e } ]
workflow: true
workflow_file: ~/workflows/hubs/NeuropixelsV2e.bonsai
---
2 changes: 1 addition & 1 deletion articles/hubs/neuropixelsv2ebeta.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ title: NeuropixelsV2eBetaHeadstage
isGuide: true
isHeadstage: true
headstage: NeuropixelsV2eBeta
devices: [ { id: NeuropixelsV2eBeta, file: device-neuropixelsv2ebeta }, { id: BNO055, file: device-bno055_neuropixelsv2e } ]
devices: [ { id: NeuropixelsV2eBeta, file: ~/articles/devices/neuropixelsv2ebeta }, { id: BNO055, file: ~/articles/devices/bno055_neuropixelsv2e } ]
workflow: true
workflow_file: ~/workflows/hubs/NeuropixelsV2eBeta.bonsai
---
2 changes: 1 addition & 1 deletion build.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ $libPath = ".\src\onix-bonsai-onix1\"
dotnet build $libPath --configuration Release

# Export workflow vectors
$libPath = Join-Path $libPath "artifacts\bin\OpenEphys.Onix\release"
$libPath = Join-Path $libPath "artifacts\bin\OpenEphys.Onix1\release"
.\docfx-tools\modules\Export-Image.ps1 -bootstrapperPath .\.bonsai\Bonsai.exe $libPath
dotnet docfx @args
6 changes: 1 addition & 5 deletions filter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,7 @@ apiRules:
uidRegex: OpenEphys.Onix.DeviceContext
- exclude:
uidRegex: ^.*DeviceFactory
- exclude:
uidRegex: ^.*DataFrame
- exclude:
type: Enum
- exclude:
uidRegex: OpenEphys.Onix.ConfigureFmcLinkController
- exclude:
uidRegex: OpenEphys.Onix.ConfigureDS90UB9x
uidRegex: OpenEphys.Onix.ConfigureDS90UB9x
8 changes: 4 additions & 4 deletions index.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,9 +24,9 @@ Other major advantages include:

<div class="quick-links">

| <xref:GettingStarted> | <xref:OpenEphys.Onix> | <xref:TutorialsLandingPage> |
|:--------------:|:-------------------:|:---------:|:---:|
| [![User Guide](images/macbook.svg){width=200}](xref:GettingStarted) | [![Operator Guide](images/books.svg){width=200}](xref:OpenEphys.Onix) | [![Tutorials](images/running.svg){width=200}](xref:TutorialsLandingPage) |
| [New to Bonsai or <br>OpenEphys.Onix? Start here!](xref:GettingStarted) | [Operator references here](xref:OpenEphys.Onix) | [Check out our tutorials <br>for useful workflows](xref:TutorialsLandingPage) |
| <xref:GettingStarted> | <xref:OpenEphys.Onix1> | <xref:TutorialsLandingPage> |
|:--------------:|:-------------------:|:---------:|
| [![User Guide](images/macbook.svg){width=200}](xref:GettingStarted) | [![Operator Guide](images/books.svg){width=200}](xref:OpenEphys.Onix1) | [![Tutorials](images/running.svg){width=200}](xref:TutorialsLandingPage) |
| [New to Bonsai or <br>OpenEphys.Onix? Start here!](xref:GettingStarted) | [Operator references here](xref:OpenEphys.Onix1) | [Check out our tutorials <br>for useful workflows](xref:TutorialsLandingPage) |

</div>
2 changes: 1 addition & 1 deletion src/onix-bonsai-onix1
4 changes: 2 additions & 2 deletions template/conceptual.html.primary.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@
{{>partials/device.visualize_text}}
{{/visualize_text}}

<p>Refer to <a class="xref" href="getting_started-visualizing_data.html">Visualizing Data</a> for more information on visualizers and how to download them.</p>
<p>Note that data will not be shown until a workflow is running. Check out <a class="xref" href="getting_started-running_a_workflow.html">Running a Workflow</a> to see how to run a workflow.</p>
<p>Refer to <a class="xref" href="~/articles/getting-started/visualizing_data.html">Visualizing Data</a> for more information on visualizers and how to download them.</p>
<p>Note that data will not be shown until a workflow is running. Check out <a class="xref" href="~/articles/getting-started/running_a_workflow.html">Running a Workflow</a> to see how to run a workflow.</p>

{{/visualize}}
{{/isGuide}}
Expand Down
Loading