Skip to content

RDoc-3729 Add Samples to documentation#2369

Open
mateuszbartosik wants to merge 3 commits intoravendb:mainfrom
mateuszbartosik:RDoc-3729
Open

RDoc-3729 Add Samples to documentation#2369
mateuszbartosik wants to merge 3 commits intoravendb:mainfrom
mateuszbartosik:RDoc-3729

Conversation

@mateuszbartosik
Copy link
Copy Markdown
Contributor

Issue link

https://issues.hibernatingrhinos.com/issue/RDoc-3729

Additional description

...Include details of the change made, paste screenshots if necessary. Anything that may be useful for the reviewers...

Type of change

  • Content - docs
  • Content - cloud
  • Content - guides
  • Content - start pages/other
  • New docs feature (consider updating /templates or readme)
  • Bug fix
  • Optimization
  • Other

Changes in docs URLs

  • No changes in docs URLs
  • Articles are restructured, URLs will change, mapping is required (update /scripts/redirects.json file, set Documents Moved PR label)

Changes in UX/UI

  • No changes in UX/UI
  • Changes in UX/UI (include screenshots and description)
localhost_3000_templates

@mateuszbartosik
Copy link
Copy Markdown
Contributor Author

Before merging, this will need updates to the existing sample + adding several more

Comment on lines +4 to +6
challengesSolutionsTags: [cloud-tax, gen-ai-data-enrichment, integration-patterns, semantic-search]
featureTags: [azure-storage-queues-etl, document-refresh, include, vector-search]
techStackTags: [csharp, aspire, azure-storage-queues, azure-functions]
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we use snake case for consistency?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's consistent with tags for guides. Should we replace both or leave as is?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should change both

@Scooletz
Copy link
Copy Markdown
Contributor

Is there a way to click through it before getting merge without locally hosting? Just asking. I'm really 😍 for this.
Requested Copilot review as well.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new Samples docs section to the Docusaurus site, including a hub page with filtering and a sample detail layout with metadata + gallery support.

Changes:

  • Introduces a new samples docs plugin + recent-samples-plugin to index sample MDX and tags for the hub UI.
  • Adds new Samples UI components (hub grid/filtering, detail layout sidebar, gallery, drawer/checkbox/toggle utilities).
  • Updates navigation (sidebar switcher), styling, and expands templates documentation for authoring Samples.

Reviewed changes

Copilot reviewed 50 out of 56 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
templates/themed-images.mdx Fixes MDX code-fence formatting in themed image template.
templates/tags-samples.mdx Adds documentation for Samples tag categories and usage.
templates/new-samples.mdx Adds documentation for creating new Samples and expected frontmatter/layout.
templates/introduction-samples.mdx Introduces Samples system architecture and file structure docs.
templates/gallery-example.mdx Adds example documentation page for the Gallery component.
templates/frames.mdx Adjusts MDX code-fence formatting for frames template examples.
templates/filtering-samples.mdx Documents Samples hub filtering behavior and UI components.
templates/components-samples.mdx Documents Samples React components and their props/usage.
templates/best-practices-samples.mdx Adds best-practices guidance for authoring Samples.
static/img/samples/library-of-ravens/cover.webp Adds sample cover image asset.
src/typescript/pathUtils.ts Adds Samples path type and landing-page routing.
src/typescript/docMetadata.d.ts Extends doc frontmatter typing with gallery.
src/theme/DocSidebar/Mobile/index.tsx Adds Samples entry to the mobile “switch” menu + hides sidebar content for Samples.
src/theme/DocSidebar/Desktop/index.tsx Adds Samples entry to the desktop “switch” menu + hides sidebar content for Samples.
src/plugins/recent-samples-plugin.ts New plugin to index sample docs + tags into global plugin data.
src/plugins/recent-guides-plugin.ts Refactors export style to export default function ….
src/hooks/useBoolean.ts Adds reusable boolean state hook for UI components.
src/css/custom.css Adds Samples-specific layout overrides (TOC hidden, full-width) and utilities.
src/components/languageConfig.ts Extracts language label/brand configuration for reuse.
src/components/Samples/types.ts Adds Samples plugin data and model types for hub UI.
src/components/Samples/index.ts Adds a single export surface for Samples components.
src/components/Samples/Overview/SampleLayout.tsx Adds responsive two-column layout with optional gallery slot.
src/components/Samples/Overview/Partials/SampleMetadataColumn.tsx Adds sidebar metadata rendering for sample detail pages.
src/components/Samples/Overview/Partials/RelatedResource.tsx Adds “related resource” link component for sample sidebars.
src/components/Samples/Overview/Partials/FeatureAccordion.tsx Adds animated accordion component for “features used” sections.
src/components/Samples/Overview/Partials/ActionsCard.tsx Adds actions card (GitHub/demo links) for sample sidebars.
src/components/Samples/Hub/SamplesHomePage.tsx Implements hub page state, URL syncing, and mobile drawer filters.
src/components/Samples/Hub/Partials/SamplesHeader.tsx Adds hub header UI.
src/components/Samples/Hub/Partials/SamplesGrid.tsx Adds filtered sample grid rendering.
src/components/Samples/Hub/Partials/SamplesFilter.tsx Adds sidebar filter UI (search + match logic).
src/components/Samples/Hub/Partials/SamplesDecoration.tsx Adds decorative SVG header background that adapts to theme colors.
src/components/Samples/Hub/Partials/SampleCard.tsx Adds sample card UI with tags + language badge support.
src/components/Samples/Hub/Partials/LanguageTag.tsx Adds special rendering for language “badge” tags.
src/components/Samples/Hub/Partials/FilterCategory.tsx Adds collapsible filter category UI with “More/Less”.
src/components/MarkdownImageLightbox.tsx Updates lightbox plugins (download/zoom) and caption behavior.
src/components/LanguageSwitcher.tsx Switches to shared languageConfig source.
src/components/Common/Toggle.tsx Adds reusable segmented toggle component.
src/components/Common/LazyImage.tsx Refactors lazy image rendering and skeleton behavior.
src/components/Common/Icon.tsx Adds 2xs icon sizing option.
src/components/Common/Gallery.tsx Adds responsive gallery/carousel component for sample pages.
src/components/Common/Drawer.tsx Adds mobile bottom-sheet drawer component (used for filters).
src/components/Common/Checkbox.tsx Adds reusable checkbox component.
src/components/Common/Button.tsx Updates button variants/sizes and icon rendering.
sidebarsTemplates.js Adds “Samples authoring” docs section + gallery example doc to templates sidebar.
sidebarsSamples.js Adds a dedicated sidebar definition for the Samples docs plugin.
samples/the-ravens-library.mdx Adds an initial sample detail page using new layout/components.
samples/tags/tech-stack.yml Adds tech stack tag definitions for Samples filtering.
samples/tags/feature.yml Adds feature tag definitions for Samples filtering.
samples/tags/challenges-solutions.yml Adds challenge/solution tag definitions for Samples filtering.
samples/home.mdx Adds Samples hub page entry using SamplesHomePage.
package.json Adds new dependencies required by Samples UI.
package-lock.json Locks newly added dependency versions.
docusaurus.config.ts Registers Samples docs plugin and recent-samples-plugin.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@kalczur
Copy link
Copy Markdown
Contributor

kalczur commented Mar 30, 2026

Is there a way to click through it before getting merge without locally hosting?

@Scooletz
It will be released into the test environment after the merge. We have a script to run the current version locally so it builds quickly.

npm ci
npm run start:current

If you have any problems running it, let me know.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants