Skip to content

Commit 8ae0923

Browse files
authored
Merge branch 'master' into update-docs-academy-theme-v2
2 parents c564c14 + 17011b3 commit 8ae0923

File tree

9 files changed

+216
-57
lines changed

9 files changed

+216
-57
lines changed

README.md

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -55,17 +55,17 @@ Running the site locally is simple. Provided you have Docker installed, clone th
5555
5656
### With Golang
5757

58-
If your local development environment has a supported version (v1.21.0+) of Golang installed, next you'll need to install extended hugo version as it has necessary SCSS/SASS support. Find all the hugo packages here: <https://github.com/gohugoio/hugo/releases/tag/v0.120.4>
58+
If your local development environment has a supported version (v1.21.0+) of Golang installed, next you'll need to install extended Hugo version as it has necessary SCSS/SASS support. Find all the Hugo packages here: <https://github.com/gohugoio/hugo/releases/tag/v0.120.4>
5959

6060
Now to setup and run the site locally run:
6161

6262
`make setup` followed by `make site`
6363

6464
...and then visit <http://localhost:1313>.
6565

66-
If you pull down new code from GitHub, you will occasionally need run `make setup` again. Otherwise, there's no need to re-run `make setup` each time the site is run, you can just run `make site` to get it going and have it automatically reload as you make and save site edits.
66+
If you pull down new code from GitHub, you will occasionally need to run `make setup` again. Otherwise, there's no need to re-run `make setup` each time the site is run, you can just run `make site` to get it going and have it automatically reload as you make and save site edits.
6767

68-
## Layer5 Documentation Stucture
68+
## Layer5 Documentation Structure
6969

7070
## High-Level Outline & Information Architecture for Layer5 Documentation
7171

@@ -81,7 +81,7 @@ If you pull down new code from GitHub, you will occasionally need run `make setu
8181
### Getting Started
8282

8383
- **Setting up Layer5 Account:** With a personal account on Layer5 Cloud, you can import or create infrastructural designs, collaborate with others through workspaces and teams, manage your organizations and more.
84-
- **Creating a Design from Meshery Catalog Templates:** With this guide, you can create amazing cloud native designs for your infrastructure from already avaliable templetes in the meshery catalog.
84+
- **Creating a Design from Meshery Catalog Templates:** With this guide, you can create amazing cloud native designs for your infrastructure from already available templates in the meshery catalog.
8585

8686
### Concepts
8787

@@ -129,13 +129,13 @@ Low-level ReST API reference for extending Layer5 Cloud.
129129
- **Starting from a pattern:** A Pattern is an entity that augments the operational behavior of a deployed instance of a Design.
130130
- **Creating Relationships:** Relationships identify and facilitate genealogy between Components.
131131
- **Working with Components:** Components represent entities in the Meshery ecosystem, exposing capabilities of the underlying platform.
132-
- **Starting from scratch:** Emphasiz the underlying system behavior for each action you take.
132+
- **Starting from scratch:** Emphasize the underlying system behavior for each action you take.
133133

134134
### Exploring Designer
135135

136136
- **Reviewing Designs:** Learn how to leverage comments in Kanvas’s Designer Mode to enhance collaboration and streamline design reviews.
137-
- **Whiteboarding:** Whiteboarding and Freestyle Drawing inside kanvas
138-
- **Export Designs:** How to export your designs for backup , sharing or offline use.
137+
- **Whiteboarding:** Whiteboarding and Freestyle Drawing inside Kanvas
138+
- **Export Designs:** How to export your designs for backup, sharing or offline use.
139139

140140
### Working with Components
141141

@@ -195,7 +195,7 @@ To display images in a pop-up modal, use the following syntax: `![alt text](/pat
195195

196196
### Adding Alert to the site
197197

198-
Use the following Syntax to add a Alert:
198+
Use the following Syntax to add an Alert:
199199
`{{< alert type="success" title="Note" >}} Your Note {{< /alert >}}`
200200

201201
- `type="danger"`: Alert used to indicate something related to security.
@@ -204,21 +204,23 @@ Use the following Syntax to add a Alert:
204204
- `type="note"`: Alert used to indicate a neutral information.
205205
- `type="success"`: Alert used to indicate a positive information.
206206

207-
By default, if you don't specify a title `title="Your Title"`, the title will be the same as the type name.
207+
By default, if you don't specify a `title="Your Title"`, the title will be the same as the type name.
208208

209-
**Note-> Using the wrong type will lead to the use of the default alert i.e. success**
209+
**Note-> Using an invalid alert type will lead to the default alert being used (i.e. success).**
210210

211211
<hr/>
212212

213213
<a name="contributing"></a><a name="community"></a>
214-
Our projects are community-built and welcome collaboration. 👍 Be sure to see the <a href="https://docs.google.com/document/d/17OPtDE_rdnPQxmk2Kauhm3GwXF1R5dZ3Cj8qZLKdo5E/edit">Layer5 Community Welcome Guide</a> for a tour of resources available to you and jump into our <a href="http://slack.layer5.io">Slack</a>!
214+
Our projects are community-driven and open to collaboration. 👍 Be sure to see the <a href="https://docs.google.com/document/d/17OPtDE_rdnPQxmk2Kauhm3GwXF1R5dZ3Cj8qZLKdo5E/edit">Layer5 Community Welcome Guide</a> for a tour of resources available to you. You can also join our <a href="http://slack.layer5.io">Slack</a> to get involved.
215215

216216
<p style="clear:both;">
217217
<a href ="https://layer5.io/community/meshmates"><img alt="MeshMates" src=".github/readme/images/layer5-community-sign.png" style="margin-right:10px; margin-bottom:15px;" width="28%" align="left"/></a>
218218
<h3>Find your MeshMate</h3>
219219

220-
<p>MeshMates are experienced Layer5 community members, who will help you learn your way around, discover live projects and expand your community network.
221-
Become a <b>Meshtee</b> today!</p>
220+
<p>
221+
MeshMates are experienced Layer5 community members who will help you learn your way around, discover live projects and expand your community network.
222+
Become a <b>Meshtee</b> today!
223+
</p>
222224

223225
Find out more on the <a href="https://layer5.io/community">Layer5 community</a>. <br />
224226
<br /><br /><br /><br />
@@ -237,7 +239,7 @@ Find out more on the <a href="https://layer5.io/community">Layer5 community</a>.
237239
<div>
238240
<a href="https://meshery.io/community"><img alt="Layer5 Community" src=".github/readme/images//community.svg" style="margin-right:8px;padding-top:9px;" width="140px" align="left" /></a>
239241
<p>
240-
✔️ <em><strong>Join</strong></em> any or all of the weekly meetings on <a href="https://calendar.google.com/calendar/b/1?cid=bGF5ZXI1LmlvX2VoMmFhOWRwZjFnNDBlbHZvYzc2MmpucGhzQGdyb3VwLmNhbGVuZGFyLmdvb2dsZS5jb20">community calendar</a>.<br />
242+
✔️ <em><strong>Join</strong></em> any or all of the weekly meetings on <a href="https://calendar.google.com/calendar/b/1?cid=bGF5ZXI1LmlvX2VoMmFhOWRwZjFnNDBlbHZvYzc2MmpucGhzQGdyb3VwLmNhbGVuZGFyLmdvb2dsZS5jb20">Community calendar</a>.<br />
241243
✔️ <em><strong>Watch</strong></em> community <a href="https://www.youtube.com/playlist?list=PL3A-A6hPO2IMPPqVjuzgqNU5xwnFFn3n0">meeting recordings</a>.<br />
242244
✔️ <em><strong>Access</strong></em> the <a href="https://drive.google.com/drive/u/4/folders/0ABH8aabN4WAKUk9PVA">Community Drive</a> by completing a community <a href="https://layer5.io/newcomer">Member Form</a>.<br />
243245
✔️ <em><strong>Discuss</strong></em> in the <a href="https://discuss.layer5.io">Community Forum</a>.<br />

charts/index.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ entries:
4949
layer5-cloud:
5050
- apiVersion: v2
5151
appVersion: v0.8.310
52-
created: "2025-07-22T09:01:53.679592506Z"
52+
created: "2025-07-22T11:35:53.646830128Z"
5353
dependencies:
5454
- condition: kratos.enabled
5555
name: kratos
@@ -60,7 +60,7 @@ entries:
6060
repository: '@ory'
6161
version: 0.24.2
6262
description: Layer5 Cloud is a collection of services that can be deployed on-premises.
63-
digest: 54b4fe51ae1bdb0274152957005499258590c422ddf736ebd32229fcdb5a0215
63+
digest: 55f64a26c7298e4170137edecf9c3f066f29a7e8c9ef41971a1c72a7a5783ec0
6464
icon: data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDEuNzMgMTQxLjczIj48dGl0bGU+NS1saWdodC1iZzwvdGl0bGU+PHJlY3QgaWQ9Il9QYXRoXyIgZGF0YS1uYW1lPSImbHQ7UGF0aCZndDsiIHg9Ijc5LjYzIiB5PSIyMy45NyIgd2lkdGg9IjM2LjkzIiBoZWlnaHQ9IjE3Ljc5IiBzdHlsZT0iZmlsbDojMDBiMzlmIi8+PHBhdGggaWQ9Il9QYXRoXzIiIGRhdGEtbmFtZT0iJmx0O1BhdGgmZ3Q7IiBkPSJNMTE5LjkyLDgzLjlWNzYuNTNjMC04LjQ5LTcuMTQtMTUuMzctMTUuOTQtMTUuMzdINDQuMzhWNTYuMzFIMjIuNTZ2MjFIOTguMVY4My45WiIgc3R5bGU9ImZpbGw6IzAwYjM5ZiIvPjxwb2x5Z29uIGlkPSJfUGF0aF8zIiBkYXRhLW5hbWU9IiZsdDtQYXRoJmd0OyIgcG9pbnRzPSI0NC4zOCA1MC41IDQ0LjM4IDQxLjc2IDczLjYgNDEuNzYgNzMuNiAyMy45NyAyMi41NiAyMy45NyAyMi41NiA1MC41IDQ0LjM4IDUwLjUiIHN0eWxlPSJmaWxsOiMwMGQzYTkiLz48cGF0aCBpZD0iX1BhdGhfNCIgZGF0YS1uYW1lPSImbHQ7UGF0aCZndDsiIGQ9Ik05OC4xLDg5LjYyVjEwMEg2OC44OHYxNy43OWgzNmExNC43NywxNC43NywwLDAsMCwxNS0xNC40OVY4OS42MloiIHN0eWxlPSJmaWxsOiMwMGQzYTkiLz48cGF0aCBpZD0iX1BhdGhfNSIgZGF0YS1uYW1lPSImbHQ7UGF0aCZndDsiIGQ9Ik00Mi42Myw5MC41OFYxMDBINjIuODV2MTcuNzloLTI2YTE0Ljc3LDE0Ljc3LDAsMCwxLTE1LTE0LjQ5VjkwLjU4WiIgc3R5bGU9ImZpbGw6IzAwYjM5ZiIvPjwvc3ZnPg==
6565
name: layer5-cloud
6666
type: application
@@ -1247,4 +1247,4 @@ entries:
12471247
urls:
12481248
- https://docs.layer5.io/charts/layer5-cloud-v0.8.235.tgz
12491249
version: v0.8.235
1250-
generated: "2025-07-22T09:01:53.674573552Z"
1250+
generated: "2025-07-22T11:35:53.64023914Z"

charts/layer5-cloud-v0.8.310.tgz

1 Byte
Binary file not shown.

content/en/cloud/academy/creating-your-learning-path/images/embedded-design-academy-content-publishing-workflow.js

Lines changed: 150 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

content/en/cloud/academy/creating-your-learning-path/index.md

Lines changed: 43 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ categories: [Academy]
77
tags: [Designer]
88
---
99

10-
This guide provides a step-by-step walkthrough for creating and organizing a new learning path in the [Layer5 Academy](https://cloud.layer5.io/academy/overview). You'll learn how to set up your content repository, structure your courses, add assets, preview your work, and publish it for your organization.
10+
This guide provides a step-by-step walkthrough for creating and organizing a new learning path in the [Layer5 Academy](https://cloud.layer5.io/academy/content). You'll learn how to set up your content repository, structure your courses, add assets, preview your work, and publish it for your organization.
1111

1212
### Prerequisites
1313

@@ -74,10 +74,8 @@ You can find and copy your Organization UUID from your organization page on [Lay
7474
7575
1. `content/learning-paths/<your-organization-uid>/`
7676
This `content` directory is where all your written material lives. The folder hierarchy you create here directly defines the navigation and organization of your learning paths.
77-
2. `static/<your-organization-uid>/`
78-
This `static` directory is for all your assets, such as images, diagrams, and so on.
79-
3. `layouts/shortcodes/<your-organization-uid>/`
80-
This `layouts` directory is for advanced use. You can place custom **Hugo Shortcodes** here if you need special reusable components in your Chapters.
77+
2. `layouts/shortcodes/<your-organization-uid>/`
78+
This `layouts` directory is for advanced use. You can place custom **Hugo Shortcodes** here if you need special reusable components.
8179
8280
3. **Build the Content Hierarchy**
8381
@@ -97,6 +95,7 @@ You can find and copy your Organization UUID from your organization page on [Lay
9795
├── _index.md
9896
├── 01-pods.md // <-- Chapter 1
9997
└── 02-services.md // <-- Chapter 2
98+
└── arch.png // <-- Image
10099
```
101100
102101
Each folder represents a level in the hierarchy, and the `_index.md` file within a folder defines the metadata (like title and description) for that level. The final `.md` files are your individual Chapter.
@@ -109,48 +108,48 @@ You can find and copy your Organization UUID from your organization page on [Lay
109108
110109
```yaml
111110
---
112-
title: "Mastering Kubernetes for Engineers"
113-
description: "Learn how to configure your Kubernetes clusters and manage the lifecycle of your workloads"
114-
banner: null # Optional, URL to banner image
111+
title: "Advanced Course"
112+
description: "This ADVANCED - Course is where to get the technical knowledge."
113+
weight: 5
114+
banner: "images/exoscale-icon.svg"
115+
id: "754627a3-7993-4b01-a7f0-c66c0212a1a1"
116+
tags: [orchestration]
117+
categories: [introductory]
115118
---
116119
```
117120
118121
> Place this frontmatter in the Markdown file that represents the learning path index page.
119122
120123
**Course Frontmatter (Optional Individual Course Pages)**
121124
122-
If each course has its own markdown page, you can use this frontmatter:
125+
If each course has its own markdown page, you can use this frontmatter:
123126
124127
```yaml
125128
---
126-
title: "Kubernetes Basics"
127-
description: "Learn the basics of Kubernetes"
128-
weight: 1
129-
banner: null # Optional
129+
id: "Networks"
130+
title: "Networks"
131+
description: "This course clear your Network concept"
132+
weight: 2
133+
banner: "images/kubernetes-icon.svg"
134+
tags: [network]
135+
categories: [introductory]
130136
---
131137
```
132138
133139
**Summary of Required Fields**
134140
135-
| Type | Field | Required | Notes |
136-
| ------------- | ------------- | -------- | --------------------------- |
137-
| Learning Path | `title` | ✅ | |
138-
| | `description` | ✅ | |
139-
| | `weight` | ✅ | Order in path, lower first |
140-
| | `banner` | ❌ | Optional image URI |
141-
| Course | `title` | ✅ | |
142-
| | `description` | ✅ | |
143-
| | `weight` | ✅ | Order in path |
144-
| | `banner` | ❌ | Optional image URI |
145-
| | `prerequisites` | ❌ | Optional List of prerequisites for the course |
146-
| | `draft` | ❌ | Skips build, won't appear|
147-
| | `tags` | ❌ | Keywords for content |
148-
| | `categories` | ❌ | Main content categories |
149-
150-
151-
{{< alert type="warning" title="Banner Image Paths" >}}
152-
When using the `banner` field in your frontmatter, always provide the full, static path to your image. This path must start with your Organization UUID; for example: `/org_id/images/kubernetes-icon.svg`.
153-
{{< /alert >}}
141+
| Applicable To | Field | Required | Notes |
142+
| --------------- | ------------- | :------: | -------------------------------------------------------------------------- |
143+
| All | `title` | ✅ | The main display title. |
144+
| All | `description` | ✅ | A brief summary of the content. |
145+
| All | `weight` | ✅ | Controls the display order (lower numbers appear first). |
146+
| All | `banner` | ❌ | Path to an image in the `static` folder, e.g., `images/icon.svg`. |
147+
| All | `tags` | ❌ | Keywords for content discovery. |
148+
| All | `categories` | ❌ | The main categories for the content. |
149+
| All | `draft` | ❌ | If `true`, the page will not be published. |
150+
| **Learning Path** | `id` | ✅ | **Crucial.** A stable UUID for tracking progress. **Do not change.** [^1]|
151+
| **Course** | `id` | ❌ | A simple, human-readable string identifier for the course. |
152+
| **Course** | `prerequisites` | ❌ | Optional list of prerequisites for the course. |
154153
155154
> For a complete list of all predefined variables and advanced usage, please refer to the official [Hugo Front Matter documentation](https://gohugo.io/content-management/front-matter/).
156155
@@ -173,7 +172,7 @@ For all assets, please use the Page Bundling method. It simplifies asset managem
173172
```
174173
175174
{{< alert type="warning" title="Legacy Method: Do Not Use" >}}
176-
The `usestatic` shortcode is **deprecated** and should not be used for new courses.
175+
The `usestatic` shortcode is **deprecated** and should not be used!
177176
{{< /alert >}}
178177
179178
**How to Add a Video**
@@ -200,14 +199,20 @@ This will start a local development server, where you can view your learning pat
200199
![Preview site](./images/preview-site.png)
201200
202201
{{< alert type="info" title="Local Previews" >}}
203-
The local preview uses a generic theme to show the structure and content of your learning path. It **will not** display your organization's specific branding, such as custom logos or color schemes. The full, branded experience will only be visible after your content is published to the Layer5 Academy platform.
202+
The local preview uses a generic theme to show the structure and content of your learning path. It **will not** display your organization's specific branding, such as custom logos or color schemes.
204203

205204
You can configure your organization's branding in the [Layer5 Cloud Organization Settings](https://cloud.layer5.io/identity/organizations).
206205
{{< /alert >}}
207206
208207
## 5. Publishing Your Learning Path
209208
210-
Once you have tested your content locally, you can publish it to the [Layer5 Academy](https://cloud.layer5.io/academy/overview) through our automated workflow. The process involves a one-time setup of secrets and then creating a GitHub Release to publish each new version.
209+
Once you have tested your content locally, you can publish it to the [Layer5 Academy](https://cloud.layer5.io/academy/content) through our automated workflow.
210+
211+
To help you visualize how your content goes from a local file to a live learning path, the diagram below illustrates the entire end-to-end publishing workflow. It shows which components you will interact with directly and how the CI/CD pipeline handles the rest automatically.
212+
213+
{{< meshery-design-embed src="..//creating-your-learning-path/images/embedded-design-academy-content-publishing-workflow.js" id="embedded-design-37c37d14-be76-487a-90aa-5ada0c1c115f" size="full" >}}
214+
215+
The process involves a one-time setup of secrets in your repository, followed by creating a GitHub Release to publish each new version of your content.
211216
212217
### Stage 1: Configure the Publishing Workflow (One-Time Setup)
213218
@@ -265,7 +270,7 @@ With the setup complete, you can publish your content anytime by creating a new
265270
5. Provide a title and description for your release.
266271
6. Click **"Publish release"**.
267272
268-
This action will automatically trigger the workflow, and your content will be deployed to the [Layer5 Academy](https://cloud.layer5.io/identity/overview).
273+
This action will automatically trigger the workflow, and your content will be deployed to the [Layer5 Academy](https://cloud.layer5.io/academy/content).
269274
270275
- Your content will be available in the [staging environment](https://staging-cloud.layer5.io/) within approximately 10 minutes.
271276
- Your content will go fully live to the production Academy platform during the next scheduled cloud release.
@@ -320,3 +325,5 @@ go: upgraded github.com/twbs/bootstrap v5.3.6+incompatible => v5.3.7+incompatibl
320325
5. **How do I structure multiple courses under one learning path?**
321326
322327
The structure is defined by your folder hierarchy. A learning path is a directory, and each course is a sub-directory within that path. This folder structure in your `content` directory directly maps to the learning path structure presented to users.
328+
329+
[^1]: The auto-generated learning path ID feature will be launched soon.

0 commit comments

Comments
 (0)