Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ layout: "docs"
type: "docs"
platformarea: ["data"]
description: "Advanced data capture and data sync configurations."
prev: /data-ai/capture-data/lorawan/
date: "2025-02-10"
---

Expand Down
1 change: 0 additions & 1 deletion docs/data-ai/capture-data/advanced/how-sync-works.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ type: "docs"
platformarea: ["data"]
description: "Data capture and sync works differently for viam-server and viam-micro-server."
date: "2024-12-18"
prev: "/data-ai/capture-data/advanced/advanced-data-capture-sync/"
---

Data capture and cloud sync works differently for `viam-server` and `viam-micro-server`.
Expand Down
1 change: 0 additions & 1 deletion docs/data-ai/capture-data/lorawan.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ description: "Configure a gateway and nodes to communicate over the LoRaWAN prot
tags: ["sensor", "components", "lorawan", "gateway", "node"]
icon: true
images: ["/icons/components/sensor.svg"]
next: /data-ai/capture-data/advanced/advanced-data-capture-sync/
---

[LoRaWAN (Long Range Wide Area Network)](https://lora-alliance.org/) enables sensor communication spanning kilometers with minimal power usage.
Expand Down
4 changes: 2 additions & 2 deletions docs/data-ai/capture-data/upload-other-data.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@ description: "Upload data to Viam from your local computer or mobile device usin
When you configure the data management service, Viam automatically uploads data from the default directory `~/.viam/capture` and any directory you configured.
If you want to upload data from another directory or source, you can also:

- [Sync a batch of data from another directory](#sync-a-batch-of-data-from-another-directory)
- [Sync a batch of data from another directory](#sync-data-from-another-directory)
- [Upload data with SDKs](#upload-data-with-sdks)
- [Upload images with the Viam mobile app](#upload-images-with-the-viam-mobile-app)

## Sync a batch of data from another directory
## Sync data from another directory

Typically, you configure the data management service to [capture and sync data from your machine at regular intervals](/data-ai/capture-data/capture-sync/).
However, you can also use the data management service to sync data from a folder.
Expand Down
1 change: 0 additions & 1 deletion docs/data-ai/data/advanced/alert-data.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ weight: 60
layout: "docs"
type: "docs"
description: "Use triggers to send email notifications or webhook requests when data from the machine is synced."
prev: "/data-ai/data/export/"
---

You can use triggers to send alerts by email or webhook when data syncs from a machine.
Expand Down
1 change: 0 additions & 1 deletion docs/data-ai/data/export.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ aliases:
viamresources: ["sensor", "data_manager"]
platformarea: ["data", "cli"]
date: "2024-12-03"
next: "/data-ai/data/advanced/alert-data/"
---

You can download machine data from cloud storage to your computer with the Viam CLI.
Expand Down
1 change: 0 additions & 1 deletion docs/manage/fleet/provision/end-user-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ languages: []
viamresources: []
platformarea: ["fleet"]
level: "Intermediate"
prev: "/manage/fleet/provision/"
date: "2024-08-21"
aliases:
- /provision/
Expand Down
2 changes: 0 additions & 2 deletions docs/manage/fleet/provision/setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,6 @@ viamresources: []
platformarea: ["fleet"]
level: "Intermediate"
date: "2024-08-21"
prev: "/manage/fleet/reuse-configuration/"
next: "/manage/fleet/provision/end-user-setup/"
aliases:
- "/build/provision/"
- /how-tos/provision-setup/
Expand Down
1 change: 0 additions & 1 deletion docs/manage/fleet/system-settings.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ weight: 50
layout: "docs"
type: "docs"
description: "Configure network settings, operating system package updates and logging defaults."
next: /manage/fleet/provision/setup/
---

The `viam-agent` configuration allows you to configure:
Expand Down
1 change: 0 additions & 1 deletion docs/manage/reference/viam-agent/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
title: "viam-agent"
linkTitle: "viam-agent"
weight: 20
no_list: true
type: docs
description: "The viam-agent is a self-updating service manager that maintains the lifecycle for Viam's system services, among them viam-server and provisioning."
date: "2025-02-14"
Expand Down
1 change: 0 additions & 1 deletion docs/manage/troubleshoot/alert.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ aliases:
- /configure/triggers/
- /how-tos/performance-metrics/
date: "2024-12-07"
next: "/manage/troubleshoot/teleoperate/custom-interface/"
# updated: "" # When the content was last entirely checked
cost: "0"
---
Expand Down
1 change: 0 additions & 1 deletion docs/manage/troubleshoot/teleoperate/custom-interface.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ level: "Intermediate"
date: "2024-11-13"
updated: "2025-09-10"
cost: "0"
prev: "/manage/troubleshoot/alert/"
---

You can remotely operate any configured machine and visualize and aggregate its data using a custom control interface.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,6 @@ aliases:
- /modular-resources/upload/
- /registry/upload/
- /operate/get-started/other-hardware/
prev: "/operate/get-started/supported-hardware/"
next: "/operate/get-started/other-hardware/create-module/hello-world-module/"
---

If your physical or virtual hardware is not [already supported](/operate/get-started/supported-hardware/) by an existing {{< glossary_tooltip term_id="module" text="module" >}}, you can create a new module to add support for it.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ aliases:
# updated: "" # When the tutorial was last entirely checked
# Python checked/updated: 2025-02-25
cost: "0"
prev: "/operate/get-started/other-hardware/"
---

## What this guide covers
Expand Down
1 change: 0 additions & 1 deletion docs/operate/get-started/other-hardware/manage-modules.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ level: "Beginner"
date: "2024-06-30"
# updated: "" # When the tutorial was last entirely checked
cost: "0"
next: /operate/get-started/other-hardware/module-configuration/
---

After you [create and upload a module](/operate/get-started/other-hardware/create-module/), you can update, delete, or change its visibility settings.
Expand Down
1 change: 0 additions & 1 deletion docs/operate/get-started/other-hardware/micro-module.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ aliases:
- /get-started/installation/microcontrollers/development-setup/
- /get-started/installation/viam-micro-server-dev/
- /installation/viam-micro-server-dev/
prev: /operate/get-started/setup-micro/
---

If no existing modules support your hardware or software, you can create your own.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,6 @@ aliases:
- /operate/reference/module-configuration/
# date: "2022-01-01"
# updated: "" # When the content was last entirely checked
prev: /operate/get-started/other-hardware/manage-modules/
next: /operate/get-started/other-hardware/lifecycle-module/
---

This page contains reference material.
Expand Down
2 changes: 0 additions & 2 deletions docs/operate/get-started/setup-micro/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,6 @@ images: ["/installation/thumbnails/install.png"]
imageAlt: "Install Viam"
no_list: false
description: "Install the lightweight version of the software that drives hardware and connects your device to the cloud."
prev: "/operate/get-started/basics/"
next: "/operate/get-started/other-hardware/micro-module/"
aliases:
- /installation/microcontrollers/
- /installation/prepare/microcontrollers/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@
title: "Micro-RDK Troubleshooting"
linkTitle: "Micro-RDK Troubleshooting"
weight: 100
no_list: true
type: docs
images: ["/installation/thumbnails/install.png"]
imageAlt: "Install viam-micro-server"
Expand Down
1 change: 0 additions & 1 deletion docs/operate/get-started/setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ images: ["/installation/thumbnails/install.png"]
imageAlt: "Install Viam"
no_list: false
description: "Install the software that drives hardware and connects your device to the cloud."
next: "/operate/get-started/supported-hardware/"
aliases:
- /installation/viam-server-setup/
- /how-tos/configure/
Expand Down
3 changes: 0 additions & 3 deletions docs/operate/get-started/supported-hardware/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ imageAlt: "Configure a Machine"
images: ["/viam.svg"]
description: "Use supported hardware with your machine."
modulescript: true
no_list: true
aliases:
- /program/extend/modular-resources/configure/
- /extend/modular-resources/configure/
Expand All @@ -22,8 +21,6 @@ aliases:
- /registry/program/extend/modular-resources/configure/
- /how-tos/use-cases/configure/
- /use-cases/configure/
prev: "/operate/get-started/setup/"
next: "/operate/get-started/other-hardware/"
---

## About the Viam Registry of supported hardware and software
Expand Down
108 changes: 100 additions & 8 deletions layouts/docs/content.html
Original file line number Diff line number Diff line change
Expand Up @@ -61,30 +61,122 @@ <h4 class="alert-heading">DRAFT</h4>
{{ $pages := union .Sections .Pages }}
<div id="next-page" class="card-container">
<hr>
{{ $pages := .CurrentSection.Pages.ByWeight }}

<!-- Build a flat list of all pages respecting hierarchical structure and weights -->
{{ $allPages := slice }}

<!-- Collect pages from all top-level sections in order -->
{{ range .Site.Sections }}
<!-- Process each top-level section -->
{{ range .Pages.ByWeight }}
{{ if eq .Params.layout "empty" }}
<!-- If this is an empty page, include its subpages recursively -->
{{ range .Pages.ByWeight }}
{{ if and (ne .Params.layout "empty") (not .Params.toc_hide) }}
{{ $allPages = $allPages | append . }}
{{ end }}
<!-- Process third level pages -->
{{ if .Pages }}
{{ range .Pages.ByWeight }}
{{ if and (ne .Params.layout "empty") (not .Params.toc_hide) (ne .Params.no_list true) }}
{{ $allPages = $allPages | append . }}
{{ end }}
<!-- Process fourth level pages -->
{{ if .Pages }}
{{ range .Pages.ByWeight }}
{{ if and (ne .Params.layout "empty") (not .Params.toc_hide) (ne .Params.no_list true) }}
{{ $allPages = $allPages | append . }}
{{ end }}
<!-- Process fifth level pages -->
{{ if .Pages }}
{{ range .Pages.ByWeight }}
{{ if and (ne .Params.layout "empty") (not .Params.toc_hide) (ne .Params.no_list true) }}
{{ $allPages = $allPages | append . }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ else }}
<!-- If this is not an empty page, include it if it's not hidden -->
{{ if and (not .Params.toc_hide) (ne .Params.no_list true) (ne .Kind "section") }}
{{ $allPages = $allPages | append . }}
{{ end }}
<!-- Also include its subpages recursively if it has any -->
{{ if .Pages }}
{{ range .Pages.ByWeight }}
{{ if and (ne .Params.layout "empty") (not .Params.toc_hide) (ne .Params.no_list true) }}
{{ $allPages = $allPages | append . }}
{{ end }}
<!-- Process third level pages -->
{{ if .Pages }}
{{ range .Pages.ByWeight }}
{{ if and (ne .Params.layout "empty") (not .Params.toc_hide) (ne .Params.no_list true) }}
{{ $allPages = $allPages | append . }}
{{ end }}
<!-- Process fourth level pages -->
{{ if .Pages }}
{{ range .Pages.ByWeight }}
{{ if and (ne .Params.layout "empty") (not .Params.toc_hide) (ne .Params.no_list true) }}
{{ $allPages = $allPages | append . }}
{{ end }}
<!-- Process fifth level pages -->
{{ if .Pages }}
{{ range .Pages.ByWeight }}
{{ if and (ne .Params.layout "empty") (not .Params.toc_hide) (ne .Params.no_list true) }}
{{ $allPages = $allPages | append . }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}
{{ end }}

<!-- Find next and previous pages from filtered list -->
{{ $nextPage := false }}
{{ $prevPage := false }}
{{ $currentPage := . }}
{{ range $i, $pageIterator := $allPages }}
{{ if eq $pageIterator $currentPage }}
{{ if lt $i (sub (len $allPages) 1) }}
{{ $nextPage = index $allPages (add $i 1) }}
{{ end }}
{{ if gt $i 0 }}
{{ $prevPage = index $allPages (sub $i 1) }}
{{ end }}
{{ end }}
{{ end }}


<!-- These are swapped in order -->
{{ if ($pages.Next . ) }}
{{ if or $prevPage .Params.prev }}
<div class="row-no-margin">
{{ else }}
<div class="row-no-margin {{ if not .Params.prev }}right-only{{ end }}">
{{ end }}

{{ if .Params.prev }}
{{ partial "nextcard.html" (dict "link" (.Params.prev) "class" "left" "customCanonicalLink" (.Page.Params.canonical) ) }}
{{ else }}
{{ with $pages.Next . }}
{{ if not .Params.toc_hide }}
{{ with $prevPage }}
{{ partial "nextcard.html" (dict "link" (.Page.File.Path) "class" "left" "customCanonicalLink" (.Page.Params.canonical) ) }}
{{ end }}
{{ end }}
{{ end }}

{{ if .Params.next }}
{{ partial "nextcard.html" (dict "link" (.Params.next) "class" "right" "customCanonicalLink" (.Page.Params.canonical) ) }}
{{ else }}
{{ with $pages.Prev . }}
{{ if not .Params.toc_hide }}
{{ with $nextPage }}
{{ partial "nextcard.html" (dict "link" (.Page.File.Path) "class" "right" "customCanonicalLink" (.Page.Params.canonical) ) }}
{{ end }}
{{ end }}
{{ end }}
</div>
Expand Down
Loading