Skip to content

beta 18 docs#133

Merged
Adammatthiesen merged 10 commits into
mainfrom
next
May 11, 2025
Merged

beta 18 docs#133
Adammatthiesen merged 10 commits into
mainfrom
next

Conversation

@Adammatthiesen
Copy link
Copy Markdown
Member

@Adammatthiesen Adammatthiesen commented May 10, 2025

Checklist before merge:

  • Release beta.18
  • update git submodule
  • update studiocms deps to npm version instead of pkg.pr.new

Summary by CodeRabbit

  • New Features
    • Added an upgrade guide for version 0.1.0-beta.18, highlighting breaking changes and bug fixes.
  • Bug Fixes
    • Updated documentation and examples to clarify JWT token usage and formats.
    • Improved plugin example and interface documentation to reflect a new hook-based plugin system.
  • Documentation
    • Enhanced CLI, plugin, and upgrade guide docs with updated badges and clearer instructions.
    • Updated minimum required StudioCMS version in plugin documentation.
  • Style
    • Adjusted CSS to apply border styling specifically to file tree elements.
  • Chores
    • Updated package dependencies and subproject references to newer versions.
    • Modified workflow environment variables for link checking automation.
  • Refactor
    • Migrated plugin configuration examples to a modular, hook-driven approach.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 10, 2025

Walkthrough

This update introduces a new hook-based plugin API for StudioCMS, revises plugin documentation and examples to match the new system, updates dependency versions, adjusts JWT token documentation and CLI help by removing a claim option, modifies workflow environment variables, and makes minor CSS and metadata changes. A new upgrade guide for version 0.1.0-beta.18 is also added.

Changes

File(s) Change Summary
.github/workflows/ci-link-validator.yml Added a new PUBLIC_GITHUB_TOKEN environment variable referencing the STUDIOCMS_SERVICE_TOKEN secret for the "Run Starlight Link Check" job.
package.json, studiocms Updated @studiocms scoped package versions from fixed 0.1.0-beta.17 to caret ranges targeting 0.1.0-beta.18, bumped expressive-code-twoslash from ^0.5.0 to ^0.5.3, and updated the subproject commit reference for studiocms.
ec.config.mjs Extended ecTwoSlash plugin configuration by adding a new handbookOptions object containing an errors array with error code 2353.
src/content/docs/en/guides/database/sqld-server.mdx, src/content/docs/en/how-it-works/cli.mdx Updated JWT token generation command by removing the explicit claim argument; clarified documentation to distinguish usage of standard JWT tokens versus base64URL encoded tokens; removed the -c, --claim <claim...> option from CLI help; added or updated "Updated" badges in sidebar metadata.
src/content/docs/en/guides/upgrade/version-guides/0-1-0-beta-17.mdx Removed the "NEW" badge with a "success" variant from the sidebar metadata.
src/content/docs/en/guides/upgrade/version-guides/0-1-0-beta-18.mdx Added a new upgrade guide document for version 0.1.0-beta.18, including metadata, breaking changes (notably the new hook-based plugin system), bug fixes, and informational asides about prior breaking changes.
src/content/docs/en/plugins/index.mdx, src/content/docs/en/plugins/extended.mdx Overhauled plugin documentation and examples to adopt a new hook-based plugin API replacing the previous flat property interface; updated minimum required StudioCMS version from 0.1.0-beta.8 to 0.1.0-beta.18; added "Updated" badges; changed example plugin definitions to register integrations and configure dashboard, frontend, and rendering via hooks rather than direct properties.
src/styles/starlight.css Closed the combined CSS rule for div.expressive-code, starlight-file-tree earlier, then introduced a separate rule block for starlight-file-tree to apply a border style independently, ensuring only starlight-file-tree elements receive the border while both retain border-radius and overflow properties.

Sequence Diagram(s)

sequenceDiagram
    participant Plugin as StudioCMS Plugin
    participant Studio as StudioCMS Core
    participant Astro as Astro Integration

    Note over Plugin: Plugin registration (new hook-based API)
    Plugin->>Studio: definePlugin({ hooks })
    Studio->>Plugin: Call 'studiocms:astro:config' hook
    Plugin->>Astro: addIntegrations()
    Studio->>Plugin: Call 'studiocms:config:setup' hook
    Plugin->>Studio: setDashboard(), setFrontend(), setRendering()
Loading

Possibly related PRs

Suggested labels

awaiting review, enhancement

Poem

A hop and a skip, new hooks in the air,
Plugins now dance with much greater flair.
JWT tokens, both standard and neat,
Docs and guides polished, dependencies replete.
With badges and borders, the style’s just right—
This bunny’s delighted, code shining bright! 🐇✨

Tip

⚡️ Faster reviews with caching
  • CodeRabbit now supports caching for code and dependencies, helping speed up reviews. This means quicker feedback, reduced wait times, and a smoother review experience overall. Cached data is encrypted and stored securely. This feature will be automatically enabled for all accounts on May 16th. To opt out, configure Review - Disable Cache at either the organization or repository level. If you prefer to disable all data retention across your organization, simply turn off the Data Retention setting under your Organization Settings.

Enjoy the performance boost—your workflow just got faster.


📜 Recent review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 9f4b312 and 9761b2c.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (2)
  • package.json (2 hunks)
  • studiocms (1 hunks)
✅ Files skipped from review due to trivial changes (1)
  • package.json
🚧 Files skipped from review as they are similar to previous changes (1)
  • studiocms
⏰ Context from checks skipped due to timeout of 90000ms (1)
  • GitHub Check: Run Starlight Link Check

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@studiocms-no-reply
Copy link
Copy Markdown
Member

studiocms-no-reply commented May 10, 2025

Lunaria Status Overview

🌕 This pull request will trigger status changes.

Learn more

By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.

You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

File Note
en/guides/database/sqld-server.mdx Source changed, localizations will be marked as outdated.
en/guides/upgrade/version-guides/0-1-0-beta-17.mdx Source changed, localizations will be marked as outdated.
en/guides/upgrade/version-guides/0-1-0-beta-18.mdx Localization added, will be marked as complete.
en/how-it-works/cli.mdx Source changed, localizations will be marked as outdated.
en/plugins/extended.mdx Source changed, localizations will be marked as outdated.
en/plugins/index.mdx Source changed, localizations will be marked as outdated.
Warnings reference
Icon Description
🔄️ The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.

@Adammatthiesen Adammatthiesen marked this pull request as ready for review May 10, 2025 13:43
@Adammatthiesen Adammatthiesen requested a review from a team as a code owner May 10, 2025 13:43
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (7)
src/styles/starlight.css (1)

80-84: Clarify grouped styling intent
You’ve separated border-radius and overflow: hidden for both expressive code blocks and file trees. Consider adding a comment above this rule to explain that it’s preventing scrollbars in code blocks, and that the border is applied separately to the file tree for clarity.

src/content/docs/en/guides/database/sqld-server.mdx (1)

55-57: Grammar improvement for clarity in output description
Refine the phrasing to "both standard format and base64URL-encoded" for better readability and consistency.
Apply this diff:

- The output is the JWT auth token encrypted with your private key in both standard format as well as base64URLEncoded, which will be used for libSQL authentication.
+ The output is the JWT auth token encrypted with your private key in both standard format and base64URL-encoded, which will be used for libSQL authentication.
🧰 Tools
🪛 LanguageTool

[grammar] ~57-~57: Probable usage error. Use “and” after ‘both’.
Context: ...our private key in both standard format as well as base64URLEncoded, which will be used fo...

(BOTH_AS_WELL_AS)

src/content/docs/en/guides/upgrade/version-guides/0-1-0-beta-18.mdx (1)

21-21: Hyphenate for consistency: "Hook-based"
Use a hyphen in "Hook-based plugin system" to match common usage.

- New Hook based plugin system - See the updated [Plugins Docs][plugin-doc] for more info.
+ New Hook-based plugin system – see the updated [Plugins Docs][plugin-doc] for more info.
🧰 Tools
🪛 LanguageTool

[uncategorized] ~21-~21: This expression is usually spelled with a hyphen.
Context: ...ckUpdate /> ## Breaking Changes - New Hook based plugin system - See the updated [Plugin...

(BASED_HYPHEN)

src/content/docs/en/plugins/index.mdx (2)

24-73: Hook-based StudioCMSPlugin interface rewrite is comprehensive.
The new interface consolidates all plugin lifecycle points under a single hooks property, improving modularity. Consider importing or referencing AstroIntegrationLogger and GridItemInput types at the top of the doc (or linking to their definitions) to help readers locate type information.


109-115: Example plugin snippet aligns with the new API.
The update to use hooks and the addIntegrations callback correctly demonstrates the new pattern. You might optionally include a studiocms:config:setup hook in this example to illustrate both hook points, but it’s clear as-is.

src/content/docs/en/plugins/extended.mdx (2)

45-47: Options interface is minimal but sufficient.
Defining only a route string keeps the example focused. Optionally, add a JSDoc comment to clarify what route represents.


57-82: myIntegration function structure is clean and functional.
The use of injectRoute and addVirtualImports inside the Astro integration hook demonstrates the extensibility model effectively. Consider typing the params argument to the hook for enhanced clarity.

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 592967f and 1c802cc.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (11)
  • .github/workflows/ci-link-validator.yml (1 hunks)
  • ec.config.mjs (1 hunks)
  • package.json (2 hunks)
  • src/content/docs/en/guides/database/sqld-server.mdx (2 hunks)
  • src/content/docs/en/guides/upgrade/version-guides/0-1-0-beta-17.mdx (0 hunks)
  • src/content/docs/en/guides/upgrade/version-guides/0-1-0-beta-18.mdx (1 hunks)
  • src/content/docs/en/how-it-works/cli.mdx (1 hunks)
  • src/content/docs/en/plugins/extended.mdx (2 hunks)
  • src/content/docs/en/plugins/index.mdx (3 hunks)
  • src/styles/starlight.css (1 hunks)
  • studiocms (1 hunks)
💤 Files with no reviewable changes (1)
  • src/content/docs/en/guides/upgrade/version-guides/0-1-0-beta-17.mdx
🧰 Additional context used
🪛 LanguageTool
src/content/docs/en/guides/upgrade/version-guides/0-1-0-beta-18.mdx

[uncategorized] ~21-~21: This expression is usually spelled with a hyphen.
Context: ...ckUpdate /> ## Breaking Changes - New Hook based plugin system - See the updated [Plugin...

(BASED_HYPHEN)

src/content/docs/en/guides/database/sqld-server.mdx

[grammar] ~57-~57: Probable usage error. Use “and” after ‘both’.
Context: ...our private key in both standard format as well as base64URLEncoded, which will be used fo...

(BOTH_AS_WELL_AS)

🔇 Additional comments (14)
.github/workflows/ci-link-validator.yml (1)

13-13: Ensure the secret and environment variable align with the link-check tool
The workflow sets PUBLIC_GITHUB_TOKEN from secrets.STUDIOCMS_SERVICE_TOKEN. Please verify that:

  1. The STUDIOCMS_SERVICE_TOKEN secret is configured in the repository settings.
  2. The Starlight Link Check action actually consumes PUBLIC_GITHUB_TOKEN (instead of the default GITHUB_TOKEN).
src/styles/starlight.css (1)

86-88: Isolate starlight-file-tree border styling
Extracting the border into its own rule ensures only the file tree gets the outline while expressive code blocks remain border-free. This split looks clean and intentional.

studiocms (1)

1-1: Submodule bump approved for beta.18 release
The Git submodule pointer has been updated to 32263470412a3196f1ed9dca6bd5cfb8fe5f258a, aligning with the new beta.18 docs. Ensure you run git submodule update --init --recursive to sync locally and confirm this commit exists in the submodule repository.

ec.config.mjs (1)

13-15: Configuration addition aligns with new plugin API
The handbookOptions.errors array correctly extends twoslashOptions for fine-grained error filtering as per the hook-based plugin system.

src/content/docs/en/how-it-works/cli.mdx (1)

7-9: Frontmatter badge addition for updated content
Adding the "Updated" badge under sidebar correctly highlights this change in the CLI docs. Indentation and YAML syntax are valid.

package.json (2)

25-30: Verify private registry package URLs
The dependencies pointing to https://pkg.pr.new/...@a7b94c7 ensure reproducible builds, but please confirm that the commit hash is correct and that these packages are published and accessible in the private registry.


47-47: Approve twoslash dependency bump
Bumping expressive-code-twoslash to ^0.5.3 aligns with the updated plugin configuration in ec.config.mjs.

src/content/docs/en/guides/database/sqld-server.mdx (2)

63-63: Maintain explicit placeholder instruction
Leaving ASTRO_DB_APP_TOKEN= blank prompts users to paste their Standard JWT token — good for clarity.


107-107: Approve JWT environment variable update
Using SQLD_AUTH_JWT_KEY for the Base64URL-encoded token is consistent with Docker setup.

src/content/docs/en/guides/upgrade/version-guides/0-1-0-beta-18.mdx (1)

1-11: New upgrade guide frontmatter
The metadata (i18n, title, description, sidebar badge/label) is correctly set up for the Beta 18 guide.

src/content/docs/en/plugins/index.mdx (2)

7-9: Frontmatter badge addition is clear and consistent.
Adding an "Updated" badge with a success variant appropriately flags this page as recently revised.


118-118: Explanation text correctly reflects code changes.
The narrative accurately describes the version bump and the integration hook behavior.

src/content/docs/en/plugins/extended.mdx (2)

7-9: Frontmatter badge update is on point.
Labeling this guide as "Updated" helps users identify the revised plugin example.


50-56: Path resolver logic is correct.
Using createResolver(import.meta.url) to derive the resolve function is a proven pattern.

Comment thread src/content/docs/en/plugins/extended.mdx Outdated
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Comment thread package.json Outdated
@Adammatthiesen Adammatthiesen merged commit f2c0ddc into main May 11, 2025
8 checks passed
@Adammatthiesen Adammatthiesen deleted the next branch May 11, 2025 04:40
ArmandPhilippot added a commit to ArmandPhilippot/studiocms-docs that referenced this pull request May 12, 2025
Adammatthiesen pushed a commit that referenced this pull request May 13, 2025
…134)

* i18n(fr): add `versions-guides/0-1-0-beta-18.mdx`

See #133

* update other files

* fix unintended revert... not sure it will fix the link issue...
@coderabbitai coderabbitai Bot mentioned this pull request Aug 11, 2025
1 task
@coderabbitai coderabbitai Bot mentioned this pull request Aug 25, 2025
1 task
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.

4 participants