-
Notifications
You must be signed in to change notification settings - Fork 85
Docfx docs #1385
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
Docfx docs #1385
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -4,23 +4,44 @@ | |||||||||||||||||||||
| [YouTube Video - Getting Started with PepperDash Essentials](https://youtu.be/FxEZtbpCwiQ) | ||||||||||||||||||||||
| *** | ||||||||||||||||||||||
|
|
||||||||||||||||||||||
| ## Download or clone | ||||||||||||||||||||||
| ## Get a CPZ | ||||||||||||||||||||||
|
|
||||||||||||||||||||||
| You may clone Essentials at <https://github.com/PepperDash/Essentials.git> | ||||||||||||||||||||||
| ### Prerequisites | ||||||||||||||||||||||
|
|
||||||||||||||||||||||
| * [VS Code](https://code.visualstudio.com/) | ||||||||||||||||||||||
| * [.NET 9 SDK](https://dotnet.microsoft.com/en-us/download) | ||||||||||||||||||||||
| * [Git](https://git-scm.com/) | ||||||||||||||||||||||
|
|
||||||||||||||||||||||
| > Note: Essentials 2.x.x uses .NET Framework 4.7.2 currently. The .NET 9 SDK will build the project with the appropriate references | ||||||||||||||||||||||
|
|
||||||||||||||||||||||
| ### Build From Source | ||||||||||||||||||||||
|
|
||||||||||||||||||||||
| 1. Clone the repo: `git clone https://github.com/PepperDash/Essentials.git` | ||||||||||||||||||||||
| 2. Open the folder in VS Code | ||||||||||||||||||||||
| 3. Build using the dotnet CLI: `dotnet build` | ||||||||||||||||||||||
|
|
||||||||||||||||||||||
| ### Download the latest release | ||||||||||||||||||||||
|
|
||||||||||||||||||||||
| The latest release can be found on [Github](https://github.com/PepperDash/Essentials/releases/latest) | ||||||||||||||||||||||
|
||||||||||||||||||||||
| The latest release can be found on [Github](https://github.com/PepperDash/Essentials/releases/latest) | |
| The latest release can be found on [GitHub](https://github.com/PepperDash/Essentials/releases/latest) |
Copilot
AI
Feb 9, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The ordered list under “How to Get Started” starts at 2. and skips numbers (4. → 6.). While Markdown may auto-renumber, this is confusing in raw form and easy to misread when editing. Consider using 1. for each item (Markdown auto-numbering) or fix the sequence.
| 2. Using an SFTP client or Crestron Toolbox, load the downloaded (or built) cpz to the processor in program slot 1 | |
| 1. If using SFTP, connect via SSH and start the program by sending console command `progload -p:1` | |
| 3. On first boot, the Essentials Application will build the necessary configuration folder structure in the user/program1/ path. | |
| 4. The application has some example configuration files included. Copy `/Program01/Example Configuration/EssentialsSpaceHuddleRoom/configurationFile-HuddleSpace-2-Source.json` to the `/User/Program1/` folder. | |
| 6. Reset the program via console `progreset -p:1`. The program will load the example configuration file. | |
| 1. Using an SFTP client or Crestron Toolbox, load the downloaded (or built) cpz to the processor in program slot 1 | |
| 1. If using SFTP, connect via SSH and start the program by sending console command `progload -p:1` | |
| 2. On first boot, the Essentials Application will build the necessary configuration folder structure in the user/program1/ path. | |
| 3. The application has some example configuration files included. Copy `/Program01/Example Configuration/EssentialsSpaceHuddleRoom/configurationFile-HuddleSpace-2-Source.json` to the `/User/Program1/` folder. | |
| 4. Reset the program via console `progreset -p:1`. The program will load the example configuration file. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,148 @@ | ||
| # How to Add Documentation to Essentials | ||
|
|
||
| This guide explains how to add new documentation articles to the Essentials docFx site. | ||
|
|
||
| ## Overview | ||
|
|
||
| The Essentials documentation uses [docFx](https://dotnet.github.io/docfx/) to generate a static documentation website. Documentation files are organized in a hierarchical structure with a table of contents (TOC) file that defines the site navigation. Documentation should be organized and written to fit into the [Diátaxis](https://diataxis.fr/start-here/) conceptual framework. | ||
|
|
||
| ## Documentation Structure | ||
|
|
||
| Documentation files are located in `/docs/docs/` and organized into the following subdirectories: | ||
|
|
||
| - **how-to/** - Step-by-step guides and tutorials | ||
| - **usage/** - Usage documentation for SIMPL bridging, standalone use, and hardware integration | ||
| - **technical-docs/** - Technical documentation including architecture, plugins, and API references | ||
| - **images/** - Image assets used in documentation | ||
|
|
||
| ## Adding a New Document | ||
|
|
||
| ### Step 1: Create Your Markdown File | ||
|
|
||
| 1. Determine which category your document belongs to (how-to, usage, or technical-docs) | ||
| 2. Create a new `.md` file in the appropriate subdirectory | ||
| 3. Use a descriptive filename with hyphens (e.g., `my-new-feature.md`) | ||
|
|
||
| **Example:** | ||
| ```bash | ||
| # For a how-to guide | ||
| touch /docs/docs/how-to/configure-audio-settings.md | ||
|
|
||
| # For usage documentation | ||
| touch /docs/docs/usage/video-switcher-control.md | ||
|
|
||
| # For technical documentation | ||
| touch /docs/docs/technical-docs/custom-device-plugin.md | ||
| ``` | ||
|
|
||
| ### Step 2: Write Your Content | ||
|
|
||
| Start your markdown file with a level 1 heading (`#`) that serves as the page title: | ||
|
|
||
| ```markdown | ||
| # Your Document Title | ||
|
|
||
| Brief introduction to the topic. | ||
|
|
||
| ## Section Heading | ||
|
|
||
| Content goes here... | ||
|
|
||
| ### Subsection | ||
|
|
||
| More detailed content... | ||
| ``` | ||
|
|
||
| **Markdown Features:** | ||
| - Use standard markdown syntax | ||
| - Include code blocks with language specifiers (```csharp, ```json, etc.) | ||
| - Add images: `` | ||
| - Link to other docs: `[Link text](../usage/related-doc.md)` | ||
|
|
||
| ### Step 3: Add to Table of Contents | ||
|
|
||
| Edit `/docs/docs/toc.yml` to add your new document to the navigation: | ||
|
|
||
| ```yaml | ||
| - name: How-to's | ||
| items: | ||
| - href: how-to/how-to-add-docs.md | ||
| - href: how-to/your-new-doc.md # Add your document here | ||
| ``` | ||
|
|
||
| **TOC Structure:** | ||
| - `name:` - Display name in the navigation menu | ||
| - `href:` - Relative path to the markdown file | ||
| - `items:` - Nested items for hierarchical navigation | ||
|
|
||
| **Example with nested items:** | ||
| ```yaml | ||
| - name: Usage | ||
| items: | ||
| - name: SIMPL Bridging | ||
| href: usage/SIMPL-Bridging-Updated.md | ||
| items: | ||
| - name: Your Sub-Topic | ||
| href: usage/your-sub-topic.md | ||
| ``` | ||
|
|
||
| ### Step 4: Test Locally | ||
|
|
||
| Build and preview the docFx site locally to verify your changes: | ||
|
|
||
| ```bash | ||
| # Navigate to the docs directory | ||
| cd docs | ||
|
|
||
| # Build the documentation | ||
| docfx build | ||
|
|
||
| # Serve the site locally | ||
| docfx serve _site | ||
| ``` | ||
|
|
||
| Then open your browser to `http://localhost:8080` to view the site. | ||
|
|
||
| ## Best Practices | ||
|
|
||
| ### File Naming | ||
| - Use lowercase with hyphens: `my-document-name.md` | ||
| - Be descriptive but concise | ||
| - Avoid special characters | ||
|
|
||
| ### Content Guidelines | ||
| - Start with a clear introduction | ||
| - Use hierarchical headings (H1 → H2 → H3) | ||
| - Include code examples where appropriate | ||
| - Add images to illustrate complex concepts | ||
| - Link to related documentation | ||
|
|
||
| ### TOC Organization | ||
| - Group related documents under the same parent | ||
| - Order items logically (basic → advanced) | ||
| - Keep the TOC hierarchy shallow (2-3 levels max) | ||
| - Use clear, descriptive names for navigation items | ||
|
|
||
| ## Common Issues | ||
|
|
||
| ### Document Not Appearing | ||
| - Verify the file path in `toc.yml` is correct and uses forward slashes | ||
| - Ensure the markdown file exists in the specified location | ||
| - Check for YAML syntax errors in `toc.yml` | ||
|
|
||
| ### Images Not Loading | ||
| - Verify image path is relative to the markdown file location | ||
| - Use `../images/` for files in the images directory | ||
| - Ensure image files are committed to the repository | ||
|
|
||
| ### Broken Links | ||
| - Use relative paths for internal links | ||
| - Test all links after building the site | ||
| - Use `.md` extension when linking to other documentation files | ||
|
|
||
| ## Additional Resources | ||
|
|
||
| - [docFx Documentation](https://dotnet.github.io/docfx/) | ||
| - [Markdown Guide](https://www.markdownguide.org/) | ||
| - [YAML Syntax](https://yaml.org/spec/1.2/spec.html) | ||
| - [Diátaxis](https://diataxis.fr/start-here/) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The prerequisites mention the “.NET 9 SDK” and claim it will build a .NET Framework 4.7.2 (
net472) project “with the appropriate references”. The repo targetsnet472(seesrc/PepperDash.Essentials/PepperDash.Essentials.csproj), and building .NET Framework projects typically requires the .NET Framework Developer Pack/targeting pack on Windows. Please adjust prerequisites/instructions so they accurately reflect what’s required to build from source.