All versions since 0.30.2
0.30.2
Patch Changes
-
#2702
02d16f3Thanks @HiDeoo! - Fixes an issue with autogenerated sidebars when using Starlight with Astro’s new Content Layer API with directories containing spaces or special characters. -
#2704
fd16470Thanks @delucis! - Fixes display of focus indicator around site title
0.30.3
Patch Changes
-
#2717
c5fcbb3Thanks @delucis! - Fixes a list item spacing issue where line break elements (<br>) could receive a margin, breaking layout in Firefox -
#2724
02d7ac6Thanks @dionysuzx! - Adds social link support for Farcaster -
#2635
ec4b851Thanks @HiDeoo! - Fixes an issue where the language picker in multilingual sites could display the wrong language when navigating between pages with the browser back/forward buttons.
0.30.4
Patch Changes
-
#2747
474c27eThanks @bbag! - Ensures<Tab>component toggling is stable when smooth scrolling is enabled via custom CSS -
#2740
0e169c9Thanks @HiDeoo! - Fixes an issue preventing Pagefind to be disabled using thepagefindfrontmatter field. -
#2732
a10b466Thanks @Sidnioulz! - Adds Storybook, Confluence and Jira social icons
0.30.5
Patch Changes
-
#2757
e7b0e74Thanks @HiDeoo! - Fixes a UI string translation issue for languages with a region subtag. -
#2760
aec9eddThanks @HiDeoo! - Adds 5 new icons:left-caret,up-arrow,down-arrow,download, andcloud-download.
0.30.6
Patch Changes
-
#2722
0b206d3Thanks @techfg! - Fixes display of long site title on mobile -
#2762
7ab1576Thanks @HiDeoo! - Prevents the header title from being translated by automatic translation systems.
0.31.0
Minor Changes
-
#2777
88f4214Thanks @hippotastic! - Updatesastro-expressive-codedependency to the latest version (0.40).This includes an update to the latest Shiki version (1.26.1), providing access to all current Shiki themes and syntax highlighting languages, and adding the config options
shiki.engine,shiki.bundledLangs,shiki.langAliasandremoveUnusedThemes. It also adds new style variants to the optional collapsible sections plugin.See the Expressive Code release notes for full details.
-
#2736
29a885bThanks @delucis! - ⚠️ BREAKING CHANGE: The minimum supported version of Astro is now 5.1.5Please update Astro and Starlight together:
Terminal window npx @astrojs/upgrade -
#2728
e187383Thanks @delucis! - Updates minimum Pagefind dependency to v1.3.0, sets new defaults for Pagefind’s ranking options, and adds support for manually configuring the ranking optionsThe new ranking option defaults have been evaluated against Starlight’s own docs to improve the quality of search results. See “Customize Pagefind’s result ranking” for more details about how they work.
-
#157
23bf960Thanks @tony-sull! - Adds a print stylesheet to improve the appearance of Starlight docs pages when printed -
#2728
e187383Thanks @delucis! - Fixes Pagefind logging to respect the Astro log level. When using Astro’s--verboseor--silentCLI flags, these are now respected by Pagefind as well.
Patch Changes
-
#2792
412effbThanks @dhruvkb! - Uses semanticvar(--sl-color-hairline)for the page sidebar border instead ofvar(--sl-color-gray-6). This is visually the same as previously but makes it easier to override the hairline color consistently across a site. -
#2736
29a885bThanks @delucis! - Updates internal dependencies@astrojs/sitemapand@astrojs/mdxto the latest versions -
#2782
d9d415bThanks @delucis! - Fixes a documentation link in the JSDoc comment for theStarlightExpressiveCodeOptionstype -
#2708
442c819Thanks @delucis! - Fixes colour contrast correction in code blocks
0.31.1
Patch Changes
- #2805
ed6f9fdThanks @HiDeoo! - Exposes theStarlightIconTypeScript type referencing the names of Starlight’s built-in icons.
0.32.0
Minor Changes
-
#2390
f493361Thanks @delucis! - Moves route data toAstro.localsinstead of passing it down via component props⚠️ Breaking change: Previously, all of Starlight’s templating components, including user or plugin overrides, had access to a data object for the current route via
Astro.props. This data is now available asAstro.locals.starlightRouteinstead.To update, refactor any component overrides you have:
- Remove imports of
@astrojs/starlight/props, which is now deprecated. - Update code that accesses
Astro.propsto useAstro.locals.starlightRouteinstead. - Remove any spreading of
{...Astro.props}into child components, which is no longer required.
In the following example, a custom override for Starlight’s
LastUpdatedcomponent is updated for the new style:---import Default from '@astrojs/starlight/components/LastUpdated.astro';import type { Props } from '@astrojs/starlight/props';const { lastUpdated } = Astro.props;const { lastUpdated } = Astro.locals.starlightRoute;const updatedThisYear = lastUpdated?.getFullYear() === new Date().getFullYear();---{updatedThisYear && (<Default {...Astro.props}><slot /></Default><Default><slot /></Default>)}Community Starlight plugins may also need to be manually updated to work with Starlight 0.32. If you encounter any issues, please reach out to the plugin author to see if it is a known issue or if an updated version is being worked on.
- Remove imports of
-
#2578
f895f75Thanks @HiDeoo! - Deprecates the Starlight pluginsetuphook in favor of the newconfig:setuphook which provides the same functionality.⚠️ BREAKING CHANGE:
The Starlight plugin
setuphook is now deprecated and will be removed in a future release. Please update your plugins to use the newconfig:setuphook instead.export default {name: 'plugin-with-translations',hooks: {'setup'({ config }) {'config:setup'({ config }) {// Your plugin configuration setup code},},}; -
#2578
f895f75Thanks @HiDeoo! - Exposes the built-in localization system in the Starlight pluginconfig:setuphook.⚠️ BREAKING CHANGE:
This addition changes how Starlight plugins add or update translation strings used in Starlight’s localization APIs. Plugins previously using the
injectTranslations()callback function from the pluginconfig:setuphook should now use the same function available in thei18n:setuphook.export default {name: 'plugin-with-translations',hooks: {'config:setup'({ injectTranslations }) {'i18n:setup'({ injectTranslations }) {injectTranslations({en: {'myPlugin.doThing': 'Do the thing',},fr: {'myPlugin.doThing': 'Faire le truc',},});},},}; -
#2858
2df9d05Thanks @XREvo! - Adds support for Pagefind’s multisite search features -
#2578
f895f75Thanks @HiDeoo! - Adds a newHookParametersutility type to get the type of a plugin hook’s arguments. -
#2578
f895f75Thanks @HiDeoo! - Adds a newuseTranslations()callback function to the Starlight pluginconfig:setuphook to generate a utility function to access UI strings for a given language. -
#2578
f895f75Thanks @HiDeoo! - Adds a newabsolutePathToLang()callback function to the Starlight pluginconfig:setupto get the language for a given absolute file path.
Patch Changes
- #2848
9b32ba9Thanks @HiDeoo! - Fixes styling of filter and metadata elements in Pagefind search UI.
0.32.1
Patch Changes
0.32.2
Patch Changes
-
#2926
c0170fdThanks @resoltico! - Adds Latvian language support -
#2918
790c000Thanks @HiDeoo! - Fixes a trailing slash inconsistency in generated sidebar links when using thetrailingSlash: 'ignore'Astro option (the default) between internal and auto-generated links. Starlight behavior for this configuration value is to use a trailing slash as many common hosting providers redirect to URLs with a trailing slash by default.
0.32.3
Patch Changes
-
#2955
77b6a41Thanks @trueberryless! - Adds 5 new icons:figma,sketch,vim,vscode, andzed. -
#2961
da57fabThanks @ematipico! - Adds 1 new icon:jetbrains.
0.32.4
Patch Changes
0.32.5
Patch Changes
-
#3021
e3f881eThanks @jsparkdev! - Updates Korean language support -
#3013
5b599ddThanks @oluwatobiss! - Adds Substack icon to social links list
0.32.6
Patch Changes
-
#3030
5bdf139Thanks @trueberryless! - Updates the type of theisFallbackfield in route data fromtruetoboolean, keeping it optional but allowingfalseas a possible value. -
#3018
188b8cfThanks @trueberryless! - Adds validation for user configrouteMiddlewareso it does not conflict with Astro’s middleware.
0.33.0
Minor Changes
-
#3026
82deb84Thanks @HiDeoo! - Fixes a potential list styling issue if the last element of a list item is a<script>tag.⚠️ BREAKING CHANGE:
This release drops official support for Chromium-based browsers prior to version 105 (released 30 August 2022) and Firefox-based browsers prior to version 121 (released 19 December 2023). You can find a list of currently supported browsers and their versions using this browserslist query.
With this release, Starlight-generated sites will still work fine on those older browsers except for this small detail in list item styling, but future releases may introduce further breaking changes for impacted browsers, including in patch releases.
-
#3025
f87e9acThanks @delucis! - Makessocialconfiguration more flexible.⚠️ BREAKING CHANGE: The
socialconfiguration option has changed syntax. You will need to update this inastro.config.mjswhen upgrading.Previously, a limited set of platforms were supported using a shorthand syntax with labels built in to Starlight. While convenient, this approach was less flexible and required dedicated code for each social platform added.
Now, you must specify the icon and label for each social link explicitly and you can use any of Starlight’s built-in icons for social links.
The following example shows updating the old
socialsyntax to the new:social: {github: 'https://github.com/withastro/starlight',discord: 'https://astro.build/chat',},social: [{ icon: 'github', label: 'GitHub', href: 'https://github.com/withastro/starlight' },{ icon: 'discord', label: 'Discord', href: 'https://astro.build/chat' },], -
#2927
c46904cThanks @HiDeoo! - Adds theheadroute data property which contains an array of all tags to include in the<head>of the current page.Previously, the
<Head>component was responsible for generating a list of tags to include in the<head>of the current page and rendering them. This data is now available asAstro.locals.starlightRoute.headinstead and can be modified using route data middleware. The<Head>component now only renders the tags provided inAstro.locals.starlightRoute.head. -
#2924
6a56d1bThanks @HiDeoo! - ⚠️ BREAKING CHANGE: Ensures that the<Badge>and<Icon>components no longer render with a trailing space.In Astro, components that include styles render with a trailing space which can prevent some use cases from working as expected, e.g. when using such components inlined with text. This change ensures that the
<Badge>and<Icon>components no longer render with a trailing space.If you were previously relying on that implementation detail, you may need to update your code to account for this change. For example, considering the following code:
<Badge text="New" />FeatureThe rendered text would previously include a space between the badge and the text due to the trailing space automatically added by the component:
New FeatureSuch code will now render the badge and text without a space:
NewFeatureTo fix this, you can add a space between the badge and the text:
<Badge text="New" />Feature<Badge text="New" /> Feature -
#2727
7c8fa30Thanks @techfg! - Updates mobile menu toggle styles to display a close icon while the menu is open
Patch Changes
-
#2927
c46904cThanks @HiDeoo! - Fixes an issue where overriding the canonical URL of a page using theheadconfiguration option orheadfrontmatter field would strip any other<link>tags from the<head>. -
#2927
c46904cThanks @HiDeoo! - Fixes an issue where generated canonical URLs would include a trailing slash when using thetrailingSlashAstro option is set to'never'. -
#3025
f87e9acThanks @delucis! - Fixes Starlight’s autogenerated<meta name="twitter:site">tags when a Twitter link is set insocialconfig. Previously these incorrectly renderedcontent="/username"and now correctly rendercontent="@username".
0.33.1
Patch Changes
-
#3088
1885049Thanks @HiDeoo! - Fixes a regression in Starlight version0.33.0that caused the description and links to language alternates for multilingual websites to be missing from the<head>of the page. -
#3065
463adf5Thanks @HiDeoo! - Updates thesocialconfiguration option TSDoc example to match the shape of the expected value.
0.33.2
Patch Changes
-
#3090
fc3ffa8Thanks @delucis! - Updates internal@astrojs/mdx,@astrojs/sitemap, andastro-expressive-codedependencies -
#3109
b5cc1b4Thanks @dhruvkb! - Updates Expressive Code to v0.41.1
0.34.0
Minor Changes
-
#2322
f14eb0cThanks @HiDeoo! - Groups all of Starlight’s CSS declarations into a singlestarlightcascade layer.This change allows for easier customization of Starlight’s CSS as any custom unlayered CSS will override the default styles. If you are using cascade layers in your custom CSS, you can use the
@layerCSS at-rule to define the order of precedence for different layers including the ones used by Starlight.We recommend checking your site’s appearance when upgrading to make sure there are no style regressions caused by this change.
-
#3122
3a087d8Thanks @delucis! - Removes defaultattrsandcontentvalues from head entries parsed using Starlight’s schema.Previously when adding
headmetadata via frontmatter or user config, Starlight would automatically add values forattrsandcontentif not provided. Now, these properties are leftundefined.This makes it simpler to add tags in route middleware for example as you no longer need to provide empty values for
attrsandcontent:head.push({tag: 'style',content: 'div { color: red }'attrs: {},});head.push({tag: 'link',content: ''attrs: { rel: 'me', href: 'https://example.com' },});This is mostly an internal API but if you are overriding Starlight’s
Headcomponent or processing head entries in some way, you may wish to double check your handling ofAstro.locals.starlightRoute.headis compatible withattrsandcontentpotentially beingundefined. -
#3033
8c19678Thanks @delucis! - Adds support for generating clickable anchor links for headings.By default, Starlight now renders an anchor link beside headings in Markdown and MDX content. A new
<AnchorHeading>component is available to achieve the same thing in custom pages built using<StarlightPage>.If you want to disable this new Markdown processing set the
markdown.headingLinksoption in your Starlight config tofalse:starlight({title: 'My docs',markdown: {headingLinks: false,},}),⚠️ BREAKING CHANGE: The minimum supported version of Astro is now v5.5.0.
Please update Starlight and Astro together:
Terminal window npx @astrojs/upgrade -
#2322
f14eb0cThanks @HiDeoo! - Removes Shikicss-variablestheme fallback.⚠️ BREAKING CHANGE:
Previously, Starlight used to automatically provide a fallback theme for Shiki, the default syntax highlighter built into Astro if the configured Shiki theme was not
github-dark.This fallback was only relevant when the default Starlight code block renderer, Expressive Code, was disabled and Shiki was used. Starlight no longer provides this fallback.
If you were relying on this behavior, you now manually need to update your Astro configuration to use the Shiki
css-variablestheme to match the previous behavior.import { defineConfig } from 'astro/config';export default defineConfig({markdown: {shikiConfig: {theme: 'css-variables',},},});Additionally, you can use custom CSS to control the appearance of the code blocks. Here are the previously used CSS variables for the fallback theme:
:root {--astro-code-foreground: var(--sl-color-white);--astro-code-background: var(--sl-color-gray-6);--astro-code-token-constant: var(--sl-color-blue-high);--astro-code-token-string: var(--sl-color-green-high);--astro-code-token-comment: var(--sl-color-gray-2);--astro-code-token-keyword: var(--sl-color-purple-high);--astro-code-token-parameter: var(--sl-color-red-high);--astro-code-token-function: var(--sl-color-red-high);--astro-code-token-string-expression: var(--sl-color-green-high);--astro-code-token-punctuation: var(--sl-color-gray-2);--astro-code-token-link: var(--sl-color-blue-high);}
Patch Changes
- #3118
77a1104Thanks @delucis! - Fixes passing imported SVGs to thefrontmatterprop of the<StarlightPage>component in Astro ≥5.7.0
0.34.1
Patch Changes
-
#3140
f6eb1d5Thanks @HiDeoo! - Fixes a text selection issue for heading with a clickable anchor link when using double or triple click to select text. -
#3148
dc8b6d5Thanks @HiDeoo! - Fixes a regression of the Starlight icon color when using thecreditsconfiguration option.
0.34.2
Patch Changes
-
#3153
ea31f46Thanks @SuperKXT! - Fixes hover styles for highlighted directory in FileTree component. -
#2905
b5232bcThanks @HiDeoo! - Fixes a potential issue for projects with dynamic routes added by an user, an Astro integration, or a Starlight plugin where some styles could end up being missing. -
#3165
80a7871Thanks @KianNH! - IncreasesmaxBufferfor an internalspawnSync()call to support larger Git commit histories when using Starlight’slastUpdatedfeature. -
#3158
d1f3c8bThanks @heisenberg0924! - Adds Hungarian language support
0.34.3
Patch Changes
-
#3058
274cc06Thanks @techfg! - Fixes display of focus indicator around site title -
#3181
449c822Thanks @HiDeoo! - Fixes an issue where all headings in Markdown and MDX content were rendered with a clickable anchor link, even in non-Starlight pages. -
#3168
ca693feThanks @jsparkdev! - Updates Korean langage support with improvements and missing translations
0.34.4
Patch Changes
-
#3205
95d124aThanks @sgalcheung! - Fixes an issue preventing to use the<StarlightPage>component when thedocscontent collection that Starlight uses does not exist. -
#3206
e6ea584Thanks @HiDeoo! - Fixes a text selection issue for heading with a clickable anchor link when using double click to select text in Chrome and Safari. -
#3233
3064c40Thanks @torn4dom4n! - Updates Vietnamese UI translations. -
#3248
16c1239Thanks @HiDeoo! - Prevents icons in the<Card>component from being shrunk in some narrow viewports. -
#3225
21b93b8Thanks @randomguy-2650! - Updates German UI translations
0.34.5
Patch Changes
-
#3282
7680e87Thanks @alvinometric! - Moves padding of<main>element to a--sl-main-padCSS custom property to simplify setting custom values -
#3288
131371eThanks @HiDeoo! - Fixes a potential configuration issue for multilingual sites with a default language including a regional subtag.
0.34.6
Patch Changes
- #3293
88f0d34Thanks @HiDeoo! - Fixes an issue preventing to override the slug of a page with theslugfrontmatter property using the/value.
0.34.7
Patch Changes
- #3298
7bd02e3Thanks @HiDeoo! - Fixes a potential issue withabsolutePathToLang()plugin API not handling paths with spaces correctly.
0.34.8
Patch Changes
- #3306
21fcd94Thanks @HiDeoo! - Fixes a regression in Starlight version0.34.5that caused multilingual sites with a default locale explicitly set torootto report a configuration error.
0.35.0
Minor Changes
-
#2261
778b743Thanks @shubham-padia! - Adds support for using any of Starlight’s built-in icons in asides. -
#3272
e7fe267Thanks @delucis! - Adds a newgenerateIdoption to Starlight’sdocsLoader()This enables overriding the default sluggifier used to convert content filenames to URLs.
-
#3276
3917b20Thanks @delucis! - Excludes banner content from search resultsPreviously, content set in
bannerin page frontmatter was indexed by Starlight’s default search provider Pagefind. This could cause unexpected search results, especially for sites setting a common banner content on multiple pages. Starlight’s defaultBannercomponent is now excluded from search indexing.This change does not impact
Banneroverrides using custom components. -
#3266
1161af0Thanks @HiDeoo! - Adds support for custom HTML attributes on autogenerated sidebar links using theautogenerate.attrsoption. -
#3274
80ccff7Thanks @HiDeoo! - Fixes an issue where some Starlight remark and rehype plugins were transforming Markdown and MDX content in non-Starlight pages.⚠️ BREAKING CHANGE:
Previously, some of Starlight’s remark and rehype plugins, most notably the plugin transforming Starlight’s custom Markdown syntax for rendering asides, were applied to all Markdown and MDX content. This included content from individual Markdown pages and content from content collections other than the
docscollection used by Starlight.This change restricts the application of Starlight’s remark and rehype plugins to only Markdown and MDX content loaded using Starlight’s
docsLoader(). If you were relying on this behavior, please let us know about your use case in the dedicated#starlightchannel in the Astro Discord or by opening an issue.
Patch Changes
-
#3266
1161af0Thanks @HiDeoo! - Ensures invalid sidebar group configurations using theattrsoption are properly reported as a type error.Previously, invalid sidebar group configurations using the
attrsoption were not reported as a type error but only surfaced at runtime. This change is only a type-level change and does not affect the runtime behavior of Starlight which does not support theattrsoption for sidebar groups. -
#3274
80ccff7Thanks @HiDeoo! - Prevents Starlight remark and rehype plugins from transforming Markdown and MDX content when using the AstrorenderMarkdown()content loader API.
0.35.1
Patch Changes
0.35.2 Latest
Patch Changes
-
#3341
10f6fe2Thanks @HiDeoo! - Prevents potential build issues with the Astro Cloudflare adapter due to the dependency on Node.js builtins. -
#3327
bf58c60Thanks @delucis! - Fixes a routing bug for docs pages with a slug authored with non-normalized composition. This could occur for filenames containing diacritics in some circumstances, causing 404s.