Skip to content
Open
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
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
20
4 changes: 2 additions & 2 deletions academy/2026-04-20-build-an-app/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,6 @@ You have an installable Nextcloud app, a published API, and a working form. Tota

## Want the proper tour?

This is the 30-minute teaser. The **[DeskDesk tutorial series](/academy/deskdesk-tutorial-0-three-paths)** is the four-part walkthrough that builds a real app on the same stack — starting with [Part 0: Three paths, one curriculum](/academy/deskdesk-tutorial-0-three-paths) which is the honest map of the three ways to build Conduction apps (traditional Nextcloud / OpenRegister + nextcloud-vue / full manifest), and why we teach the manifest path in the rest of the series.
This is the 30-minute teaser. The **[DeskDesk tutorial series](/academy/deskdesk-tutorial-0-three-paths)** is the six-part walkthrough that builds a real app on the same stack — starting with [Part 0: Three paths, one curriculum](/academy/deskdesk-tutorial-0-three-paths) which is the honest map of the three ways to build Conduction apps (traditional Nextcloud / OpenRegister + nextcloud-vue / full manifest), and why we teach the manifest path in the rest of the series.

If this 30-minute tutorial felt like it skipped over how `App.vue`, the router, and the page components actually came together, that's because it does — Part 0 names the trade-off and Parts 1–5 walk it from the chassis up.
If this 30-minute tutorial felt like it skipped over how `App.vue`, the router, and the page components actually came together, that's because it does — Part 0 names the trade-off and Parts 1–6 walk it from the chassis up.
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import {
HexCard,
} from '@conduction/docusaurus-preset/components';

This is **Part 0** of the four-part DeskDesk tutorial — the orientation lap. Before scaffolds, schemas, or manifests, the most useful thing we can hand a new developer is an honest map of the three ways Conduction apps actually get built, what each one costs, and what each one gives back. The rest of the series picks one path and shows the receipts. Part 0 explains why.
This is **Part 0** of the six-part DeskDesk tutorial — the orientation lap. Before scaffolds, schemas, or manifests, the most useful thing we can hand a new developer is an honest map of the three ways Conduction apps actually get built, what each one costs, and what each one gives back. The rest of the series picks one path and shows the receipts. Part 0 explains why.

A second thing matters from minute one: **the manifest system and the `@conduction/nextcloud-vue` component library are two different surfaces**. The manifest is the *declarative what* — a single `manifest.json` that describes navigation, pages, configuration. `nextcloud-vue` is the *rendering how* — the `Cn*` components the manifest dispatches to (`CnAppRoot`, `CnPageRenderer`, `CnIndexPage`, `CnDetailPage`, `CnDashboardPage`, and the rest). They are technically separable. They are also so intertwined in practice that the rest of this series teaches them together, and every lesson names which surface it is touching.

Expand Down
4 changes: 3 additions & 1 deletion academy/2026-05-07-woo-bestanden-uploaden/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,11 @@ contentType: tutorial
authors: [conduction]
date: 2026-05-07
summary: Four ways to attach documents to a Woo publication, from one PDF to a 6 MB report in chunks. With tested API calls.
tags: [Woo, OpenRegister, Files, Upload, Publications]
tags: [Woo, OpenRegister, Files, Upload, Publications, Tutorial series]
apps: [openregister, openwoo]
durationMinutes: 18
series: woo-tutorial
partNumber: 2
---

import {Outcomes, Outcome, Prerequisites, PrerequisiteItem, Troubleshooting, TroubleshootingItem, NextSteps, NextStep, ContactCta} from '@conduction/docusaurus-preset/components';
Expand Down
4 changes: 3 additions & 1 deletion academy/2026-05-07-woo-register-opzetten/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,11 @@ contentType: tutorial
authors: [conduction]
date: 2026-05-07
summary: Import the canonical Woo register into OpenRegister. One API call, ten TOOI categories, ready to store publications.
tags: [Woo, OpenRegister, Publications, TOOI, Open data]
tags: [Woo, OpenRegister, Publications, TOOI, Open data, Tutorial series]
apps: [openregister, openwoo]
durationMinutes: 10
series: woo-tutorial
partNumber: 1
---

import {Outcomes, Outcome, Prerequisites, PrerequisiteItem, ContactCta} from '@conduction/docusaurus-preset/components';
Expand Down
3 changes: 2 additions & 1 deletion academy/2026-05-10-deskdesk-tutorial-1-scaffold/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ title: "Build a Nextcloud app on the Conduction stack — Part 1: Scaffold"
contentType: tutorial
authors: [conduction]
date: 2026-05-10
summary: Clone the Conduction app template, rename it to DeskDesk, build, enable, and see the canonical app chassis. The first of four parts that build a working desk-booking app on the full Conduction stack.
summary: Clone the Conduction app template, rename it to DeskDesk, build, enable, and see the canonical app chassis. The first of six parts that build a working desk-booking app on the full Conduction stack.
tags: [App development, Nextcloud, OpenRegister, nextcloud-vue, Tutorial series]
apps: [openregister]
durationMinutes: 20
Expand Down Expand Up @@ -47,6 +47,7 @@ In Part 1 you scaffold the app, rename it, build it, and see the canonical app c
| 3 | [Schema-driven integrations](/academy/deskdesk-tutorial-3-calendar) | Bookings appear in NC Calendar via the OpenRegister calendar provider |
| 4 | [External knowledge + ship](/academy/deskdesk-tutorial-4-knowledge-and-ship) | xWiki source via OpenConnector, sidebar tab, package, publish |
| 5 | [Advanced manifest features](/academy/deskdesk-tutorial-5-advanced-manifest) | actionToggles, fieldWidgets, public-mode pages, the other page types |
| 6 | [Integrate](/academy/deskdesk-tutorial-6-integrate) | Cross-register reads, OpenConnector source/sync, two-way webhook back into OR |

Same shape, two repos:

Expand Down
Loading
Loading