diff --git a/public/website-feature-guide/slide1.png b/public/website-feature-guide/slide1.png new file mode 100644 index 0000000..a16d760 Binary files /dev/null and b/public/website-feature-guide/slide1.png differ diff --git a/public/website-feature-guide/slide2.png b/public/website-feature-guide/slide2.png new file mode 100644 index 0000000..fcefff5 Binary files /dev/null and b/public/website-feature-guide/slide2.png differ diff --git a/src/components/CourseSection.astro b/src/components/CourseSection.astro new file mode 100644 index 0000000..24fa364 --- /dev/null +++ b/src/components/CourseSection.astro @@ -0,0 +1,167 @@ +--- +import ContentFigure from './ContentFigure.astro'; + +interface Props { + title: string; + href: string; + image?: string; + imageAlt?: string; + imageSide?: 'left' | 'right'; + underConstruction?: boolean; +} + +const { + title, + href, + image, + imageAlt = title, + imageSide = 'right', + underConstruction = false, +} = Astro.props; + +const hasImage = Boolean(image); +--- + +
+ { + hasImage && imageSide === 'left' && ( +
+ +
+ ) + } + +
+

+ {title} + { + underConstruction && ( + + {' '} + (Under Construction) + + ) + } +

+ +
+ + { + hasImage && imageSide === 'right' && ( +
+ +
+ ) + } +
+ + diff --git a/src/config/sidebarConfig.ts b/src/config/sidebarConfig.ts index d59606a..125eb92 100644 --- a/src/config/sidebarConfig.ts +++ b/src/config/sidebarConfig.ts @@ -26,6 +26,153 @@ export const sidebarSections: Record = { }, ], + // Learning Course section + '/learning-course': [ + { + label: 'Learning Course', + items: [ + { label: 'Overview', slug: 'learning-course' }, + { + label: 'Feature Guide', + slug: 'learning-course/getting-started/website-feature-guide', + }, + { + label: 'Course Setup', + collapsed: true, + items: [ + { + label: 'Required Tools', + slug: 'learning-course/getting-started/required-tools', + }, + { + label: 'VS Code Overview', + slug: 'learning-course/getting-started/vscode-overview', + }, + { + label: 'Forking and Cloning', + slug: 'learning-course/getting-started/forking-and-cloning', + }, // no work + ], + }, + { + label: 'Stage 0', + collapsed: true, + items: [ + { + label: 'Stage 0 Introduction', + slug: 'learning-course/intro-to-java/stage-overview', + }, + { + label: 'Intro To Java', + collapsed: true, + items: [ + { + label: 'Java Fundamentals', + slug: 'learning-course/intro-to-java/java-fundamentals', + }, + { + label: 'Operators', + slug: 'learning-course/intro-to-java/operators', + }, + { + label: 'Conditionals', + slug: 'learning-course/intro-to-java/conditionals', + }, + { + label: 'Loops', + slug: 'learning-course/intro-to-java/loops', + }, + { + label: 'Objects', + slug: 'learning-course/intro-to-java/objects', + }, + { + label: 'Methods', + slug: 'learning-course/intro-to-java/methods', + }, + ], + }, + ], + }, + { + label: 'Stage 1', + collapsed: true, + items: [ + { + label: 'Stage 1 Introduction', + slug: 'learning-course/stage-1a-commands/overview', + }, + { + label: '1A', + collapsed: true, + items: [ + { + label: 'TBD', + slug: 'stage-1a-commands/command-based-overview', + }, + { + label: 'TBD', + slug: 'stage-1a-commands/the-command-body', + }, + { + label: 'TBD', + slug: 'stage-1a-commands/commands-and-mechanisms', + }, + ], + }, + { + label: 'Stage 1B: Commands', + collapsed: true, + items: [ + { + label: 'Stage 1B Introduction', + slug: 'learning-course/stage1b/overview', + }, + { + label: '1B', + collapsed: true, + items: [ + { + label: 'The Concepts', + slug: 'stage-1b-commands/command-based-overview', + }, + { + label: 'The Body of a Command', + slug: 'stage-1b-commands/the-command-body', + }, + { + label: 'Commands & Mechanisms, Pt. 1', + slug: 'stage-1b-commands/commands-and-mechanisms', + }, + { + label: 'Triggers and Scheduling', + slug: 'stage-1b-commands/triggers', + }, + { + label: 'Commands & Mechanisms, Pt. 2', + slug: 'stage-1b-commands/commands-and-mechanisms-pt2', + }, + { + label: 'Exercise - Kitbot Rewrite, Pt. 1', + slug: 'stage-1b-commands/command-based-kitbot', + }, + { + label: 'Suppliers in Command-Based', + slug: 'stage-1b-commands/suppliers-in-command-based', + }, + { + label: 'Exercise - Kitbot Rewrite, Pt. 2', + slug: 'stage-1b-commands/command-based-kitbot-pt2', + }, + ], + }, + ], + }, + ], + }, + ], + }, + ], // Educator's Guide section '/educators-guide': [ { @@ -94,7 +241,11 @@ export const sidebarSections: Record = { label: 'Getting Started', items: [ { - label: 'Intro to Programmming', + label: 'Website Feature Guide', + slug: 'getting-started/website-feature-guide', + }, + { + label: 'Intro to Programming', slug: 'getting-started/intro-to-prog', }, { diff --git a/src/content/docs/feature-guide/img/slide1.webp b/src/content/docs/feature-guide/img/slide1.webp deleted file mode 100644 index 388ed02..0000000 Binary files a/src/content/docs/feature-guide/img/slide1.webp and /dev/null differ diff --git a/src/content/docs/feature-guide/img/slide2.webp b/src/content/docs/feature-guide/img/slide2.webp deleted file mode 100644 index 90d948b..0000000 Binary files a/src/content/docs/feature-guide/img/slide2.webp and /dev/null differ diff --git a/src/content/docs/getting-started/intro-to-prog.mdx b/src/content/docs/getting-started/intro-to-prog.mdx deleted file mode 100644 index 9999245..0000000 --- a/src/content/docs/getting-started/intro-to-prog.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: Intro to Programming -description: Coming soon! -prev: false -next: getting-started/required-tools ---- - -Coming soon! diff --git a/src/content/docs/index.mdx b/src/content/docs/index.mdx index e0e159d..e2f0907 100644 --- a/src/content/docs/index.mdx +++ b/src/content/docs/index.mdx @@ -10,7 +10,7 @@ hero: html: 'FRCSoftware.org logo' actions: - text: Start Learning - link: /getting-started/intro-to-prog + link: /learning-course/ --- import HomeCard from '../../components/HomeCard.astro'; diff --git a/src/content/docs/getting-started/forking-and-cloning.mdx b/src/content/docs/learning-course/getting-started/forking-and-cloning.mdx similarity index 94% rename from src/content/docs/getting-started/forking-and-cloning.mdx rename to src/content/docs/learning-course/getting-started/forking-and-cloning.mdx index bd63cf3..73a13c2 100644 --- a/src/content/docs/getting-started/forking-and-cloning.mdx +++ b/src/content/docs/learning-course/getting-started/forking-and-cloning.mdx @@ -5,7 +5,7 @@ prev: getting-started/vscode-overview next: false --- -import ContentFigure from '../../../components/ContentFigure.astro'; +import ContentFigure from '../../../../components/ContentFigure.astro'; ## Forking diff --git a/src/content/docs/getting-started/required-tools.mdx b/src/content/docs/learning-course/getting-started/required-tools.mdx similarity index 100% rename from src/content/docs/getting-started/required-tools.mdx rename to src/content/docs/learning-course/getting-started/required-tools.mdx diff --git a/src/content/docs/getting-started/vscode-overview.mdx b/src/content/docs/learning-course/getting-started/vscode-overview.mdx similarity index 100% rename from src/content/docs/getting-started/vscode-overview.mdx rename to src/content/docs/learning-course/getting-started/vscode-overview.mdx diff --git a/src/content/docs/feature-guide/index.mdx b/src/content/docs/learning-course/getting-started/website-feature-guide.mdx similarity index 71% rename from src/content/docs/feature-guide/index.mdx rename to src/content/docs/learning-course/getting-started/website-feature-guide.mdx index 9a35a4e..5491f3b 100644 --- a/src/content/docs/feature-guide/index.mdx +++ b/src/content/docs/learning-course/getting-started/website-feature-guide.mdx @@ -1,10 +1,11 @@ --- title: Website Feature Guide description: Learn about the features of FRC Software to navigate the content effectively -template: splash +prev: false +next: getting-started/forking-and-cloning --- -There are several features across the website that, if missed, will make it hard to go through the content effectively. +Before you start learning, there are several features across the website that, if missed, will make it hard to go through the lessons effectively. The following features are shown with examples to help you gain a quick understanding of them before you make your way through the website. ## Across the Website @@ -14,14 +15,16 @@ The following features are shown with examples to help you gain a quick understa Press the `Esc` key to minimize it again. - The website has a [glossary](/resources/glossary/) of terms related to the content. Whenever a word in that glossary is mentioned in the website, it will be underlined. - You can hover over these underlined words to get a quick definition (e.g. COTS, OTB). + You can hover over these underlined words to get a quick definition (e.g. PDH, Spark MAX). - Some information is hidden in dropdowns. Try to check most of them! - +
+ Hint +
+

You will find hints or answers to questions here.

+
+
### Admonitions (Call-Outs) @@ -47,14 +50,11 @@ Examples for different concepts are shown in an "Example" box like this one. ### Slideshows -![Slide 1](img/slide1.webp) Navigate the slideshows by pressing the arrows on the sides. +![Slide 1](/website-feature-guide/slide1.png) Navigate the slideshows by pressing the arrows on the sides. -![Slide 2](img/slide2.webp) The dots below the caption indicate the slide you're on. +![Slide 2](/website-feature-guide/slide2.png) The dots below the caption indicate the slide you're on. They can also be clicked to navigate to slides. -![Slide 3](https://www.youtube.com/watch?v=sgEnAByelWs) Some slideshows contain videos. -Click any slide to open a larger lightbox view. -