惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

雷峰网
雷峰网
宝玉的分享
宝玉的分享
I
InfoQ
P
Privacy International News Feed
V
V2EX
IT之家
IT之家
S
SegmentFault 最新的问题
D
Darknet – Hacking Tools, Hacker News & Cyber Security
V2EX - 技术
V2EX - 技术
C
CERT Recently Published Vulnerability Notes
C
Check Point Blog
The Register - Security
The Register - Security
爱范儿
爱范儿
博客园 - 三生石上(FineUI控件)
AWS News Blog
AWS News Blog
M
MIT News - Artificial intelligence
C
Cyber Attacks, Cyber Crime and Cyber Security
F
Fortinet All Blogs
B
Blog
N
Netflix TechBlog - Medium
B
Blog RSS Feed
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Last Week in AI
Last Week in AI
T
Threatpost
Forbes - Security
Forbes - Security
U
Unit 42
A
Arctic Wolf
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
P
Palo Alto Networks Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Recorded Future
Recorded Future
L
Lohrmann on Cybersecurity
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
P
Proofpoint News Feed
月光博客
月光博客
Spread Privacy
Spread Privacy
MongoDB | Blog
MongoDB | Blog
Jina AI
Jina AI
I
Intezer
V
Visual Studio Blog
阮一峰的网络日志
阮一峰的网络日志
The Hacker News
The Hacker News
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
L
LangChain Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
博客园_首页
MyScale Blog
MyScale Blog
腾讯CDC
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
量子位

The Astro Blog

Astro 6.4 Astro 6.3 Starlight 0.39 Astro 6.2 What's new in Astro - April 2026 What's new in Astro - March 2026 Astro 6.1 CloudCannon Joins Astro as an Official CMS Partner Astro 6.0 What's new in Astro - February 2026 What's new in Astro - January 2026 Astro 5.17 Supporting the future of Astro The Astro Technology Company joins Cloudflare Astro 6 Beta What's new in Astro - December 2025 What's new in Astro - November 2025 Astro 5.16 Stainless Sponsors Astro, Launches Astro-Powered Docs Platform What's new in Astro - October 2025 Astro 5.15 Spirit of Astro: meet the winning designs What's new in Astro - September 2025 Astro 5.14 Cloudflare Donates $150,000 to Support Astro's Open Source Mission Webflow Donates $150,000 to Support Astro's Open Source Mission Mux: Our Official Video Partner Unleashing creativity: How CodeTV built a video streaming platform with Astro and Mux | Astro What's new in Astro - August 2025 Astro 5.13 What's new in Astro - July 2025 Astro 5.12 Starlight 0.35 Astro 5.11 What's new in Astro - June 2025 Live Content Collections: A Deep Dive Introducing… Astro Mart Astro Solstice Festival Astro 5.10 Astro 5.9 What's new in Astro - May 2025 Astro 5.8 What's new in Astro - April 2025 2025 Technical Steering Committee Starlight April Update Astro 5.7 Astro Agency Partner Program Astro 5.6 What's new in Astro - March 2025 Astro 5.5 What's new in Astro - February 2025 Astro 5.4 Starlight 0.32 Astro 5.3 What's new in Astro - January 2025 Astro 5.2 2024 year in review What's new in Astro - December 2024 Astro 5.1 Astro 5.0 Google IDX: Our Official Online Editor Partner What's new in Astro - November 2024 What's new in Astro - October 2024 Astro x Cloudinary SDK What's new in Astro - September 2024 Community Loaders for Astro Content Layer Astro x Hygraph: Content Loader Astro x Cloudinary: Content Loader Astro x Storyblok: Content Loader Content Layer: A Deep Dive Starlight 0.28 Astro 5.0 Beta Release The $100,000 Astro Ecosystem Fund Fall Update Goodbye Studio, Hello DB What's new in Astro - August 2024 Astro 4.15 Astro 4.14 Astro 4.13 What's new in Astro - July 2024 Astro 4.12: Server Islands Netlify: Our Official Deployment Partner What's new in Astro - June 2024 Astro 4.11 Astro Together 2024 Server Islands The Astro Content Layer Zero-JavaScript View Transitions Astro 4.10 Starlight turns one year old! What's new in Astro - May 2024 Astro 4.9 Astro 4.8 What's new in Astro - April 2024 Astro 4.7 Astro 4.6 What's new in Astro - March 2024 Migrating 500+ tests from Mocha to Node.js Astro DB: A Deep Dive The Astro Developer Portal Astro DB
Astro 4.3
Erika, Emanuele Stoppa, Matthew Phillips, Nate Moore, Bjorn Lu · 2024-02-01 · via The Astro Blog

Astro 4.3 is now available! This release includes a new experimental i18n feature to try out, and improvements to working with your build output, component prop types, Markdown images, and more.

Highlights include:

  • Experimental: Add domain support for i18n
  • More control over your HTML file output
  • Add ComponentProps type utility
  • Better support for relative images in Markdown

How to upgrade

To take advantage of the latest features, make sure you’re running the latest version of Astro. You can upgrade to Astro 4.3 by running the @astrojs/upgrade command:

or by running the upgrade command for your package manager:

npm install astro@latest

pnpm upgrade astro --latest

yarn upgrade astro --latest

Experimental: Add domain support for i18n

Astro 4.3 adds an experimental domains i18n configuration. This allows you to specify different domains or subdomains for different supported locales.

For example, you could now use example.com for your English site, fr.example.com for your French site, and example.es for your Spanish site. Enable the experimental flag i18nDomains and map any or all of your locales to domains using i18n.domains in your astro.config.mjs file:

import {defineConfig} from "astro/config"

export default defineConfig({

site: "https://example.com",

output: "server", // required, with no prerendered pages

adapter: node({

mode: 'standalone',

}),

i18n: {

defaultLocaLe: 'en',

locales: ['en', 'es', 'pt_BR', 'pt', 'fr'],

domains: {

fr: "https://fr.example.com",

es: "https://example.es"

},

routing: {

prefixDefaultLocale: true,

}

},

experimental: {

i18nDomains: true

},

})

Note that this feature requires an entirely server-rendered site with no prerendered pages. Currently, the @astrojs/node and @astrojs/vercel adapters are supported with more adapter compatibility to come!

See more in our internationalization documentation for more details and limitations on this experimental routing feature.

More control over your HTML file output

This release adds a new build.format option called preserve to give you more control over the resulting HTML files in your production build.

The current configuration options (file and directory) either build all of your HTML pages as files matching the route name (e.g. /about.html) or build all of your files as index.html within a nested directory structure (e.g. /about/index.html), respectively. It is not possible to create individual index pages (e.g. /about/index.html) when using the file configuration option.

Rather than introduce a breaking change to file, we added the new preserve format which will preserve how the filesystem is structured and make sure that is mirrored over to production:

  • about.astro becomes about.html
  • about/index.astro becomes about/index.html

What you see is what you get! This feature unlocks better compatibility with certain web servers who have strict requirements on how files are structured.

See the build.format configuration options reference for more details.

Add ComponentProps type utility

Astro now includes a new ComponentProps type export from astro/types to get the props type of an Astro component. This is similar to React.ComponentProps or Svelte’s ComponentProps.

This type export allows you to reference the Props accepted by another component, even if that component doesn’t export that Props type directly.

---

import type { ComponentProps } from 'astro/types';

import Button from "./Button.astro";

type MyButtonProps = ComponentProps<typeof Button>;

---

Fix using images in Markdown without a relative specifier

Previously, using images in Markdown without using a relative specifier (such as ./ or ../) would cause Astro to throw an error.

Now, you can use the standard ![](img.png) syntax in Markdown files for images colocated in the same folder: no relative specifier required!

There is no need to update your project; your existing images will still continue to work. However, you can safely remove any relative specifiers from these Markdown images as they are no longer necessary… as the Markdown spec intended!

![A cute dog](./dog.jpg)

![A cute dog](dog.jpg)

<!-- This dog lives in the same folder as my article! -->

Thanks to Oliver Speir for contributing this fix!

Bug Fixes

As always, additional bug fixes are included in this release. Check out the release notes to learn more.