Skip to content

Commit 2289ff4

Browse files
authored
Merge branch 'main' into feat/print-stylesheet
2 parents 5821c94 + 5d97cce commit 2289ff4

18 files changed

+1443
-8
lines changed

.changeset/swift-files-retire.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@astrojs/starlight": patch
3+
---
4+
5+
Fix word wrapping in search modal on narrow screens

docs/astro.config.mjs

+15-3
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ export default defineConfig({
4444
de: { label: 'Deutsch', lang: 'de' },
4545
es: { label: 'Español', lang: 'es' },
4646
ja: { label: '日本語', lang: 'ja' },
47+
fr: { label: 'Français', lang: 'fr' },
4748
},
4849
sidebar: [
4950
{
@@ -52,23 +53,33 @@ export default defineConfig({
5253
de: 'Beginne hier',
5354
es: 'Comienza aqui',
5455
ja: 'ここからはじめる',
56+
fr: 'Commencez ici',
5557
},
5658
items: [
5759
{
5860
label: 'Getting Started',
5961
link: 'getting-started',
60-
translations: { es: "Empezando", ja: '入門' },
62+
translations: {
63+
de: 'Erste Schritte',
64+
es: 'Empezando',
65+
ja: '入門',
66+
fr: 'Mise en route'
67+
},
6168
},
6269
{
6370
label: 'Environmental Impact',
6471
link: 'environmental-impact',
65-
translations: { es: "Documentación ecológica", ja: '環境への負荷' },
72+
translations: {
73+
es: 'Documentación ecológica',
74+
ja: '環境への負荷',
75+
fr: 'Impact environnemental'
76+
},
6677
},
6778
],
6879
},
6980
{
7081
label: 'Guides',
71-
translations: { de: 'Anleitungen', es: 'Guías', ja: 'ガイド' },
82+
translations: { de: 'Anleitungen', es: 'Guías', ja: 'ガイド', fr: 'Guides' },
7283
autogenerate: { directory: 'guides' },
7384
},
7485
{
@@ -77,6 +88,7 @@ export default defineConfig({
7788
de: 'Referenz',
7889
es: 'Referencias',
7990
ja: 'リファレンス',
91+
fr: 'Référence',
8092
},
8193
autogenerate: { directory: 'reference' },
8294
},
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
---
2+
title: Erste Schritte
3+
description: Lerne wie du deine nächste Dokumentationsseite mit Starlight und Astro erstellst.
4+
---
5+
6+
import { Tabs, TabItem } from '@astrojs/starlight/components';
7+
8+
:::caution[In Arbeit]
9+
Starlight befindet sich in einer frühen Entwicklungsphase.
10+
Wenn du etwas findest, das nicht funktioniert, [öffne ein Issue auf GitHub](https://github.com/withastro/starlight/issues/new/choose) oder lass es uns bei [Discord](https://astro.build/chat) wissen.
11+
:::
12+
13+
## Erstelle ein neues Projekt
14+
15+
Starlight ist ein voll ausgestattetes Dokumentations-Theme, das auf dem [Astro](https://astro.build) Framework aufbaut.
16+
17+
Du kannst ein neues Astro + Starlight Projekt mit dem folgenden Befehl erstellen:
18+
19+
<Tabs>
20+
<TabItem label="npm">
21+
22+
```sh
23+
# Erstelle ein neues Projekt mit npm
24+
npm create astro@latest -- --template starlight
25+
```
26+
27+
</TabItem>
28+
<TabItem label="pnpm">
29+
30+
```sh
31+
# Erstelle ein neues Projekt mit pnpm
32+
pnpm create astro --template starlight
33+
```
34+
35+
</TabItem>
36+
<TabItem label="Yarn">
37+
38+
```sh
39+
# Erstelle ein neues Projekt mit yarn
40+
yarn create astro --template starlight
41+
```
42+
43+
</TabItem>
44+
</Tabs>
45+
46+
Damit wird ein neues [Projektverzeichnis](/de/guides/project-structure/) mit allen erforderlichen Dateien und Konfigurationen für deine Webseite erstellt.
47+
48+
:::tip[In Aktion sehen]
49+
Probiere Starlight in deinem Browser aus:
50+
[öffne die Vorlage in StackBlitz](https://stackblitz.com/github/withastro/starlight/tree/main/examples/basics).
51+
:::
52+
53+
## Inhalte mit Starlight erstellen
54+
55+
Starlight ist bereit für dich, neuen Inhalt hinzuzufügen oder deine vorhandenen Dateien mitzubringen!
56+
57+
### Dateiformate
58+
59+
Starlight unterstützt das Erstellen von Inhalten in Markdown und MDX. (Du kannst die experimentelle [Astro Markdoc Integration](https://docs.astro.build/de/guides/integrations-guide/markdoc/) installieren, um Markdoc zu unterstützen.)
60+
61+
### Seiten hinzufügen
62+
63+
Füge neue Seiten zu deiner Webseite automatisch hinzu, indem du `.md` oder `.mdx` Dateien in `src/content/docs/` erstellst. Erstelle Unterordner, um deine Dateien zu organisieren und mehrere Pfadsegmente zu erstellen:
64+
65+
```js
66+
`src/content/docs/hello-world.md` -> `your-site/hello-world`
67+
`src/content/docs/guides/faq.md` -> `your-site/guides/faq`
68+
```
69+
70+
### Typsichere Frontmatter
71+
72+
Alle Starlight Seiten teilen sich anpassbare [Frontmatter-Eigenschaften](/de/reference/frontmatter/), mit denen das Erscheinungsbild der Seite gesteuert wird:
73+
74+
```md
75+
---
76+
title: Hello, World!
77+
description: This is a page in my Starlight-powered site
78+
---
79+
```
80+
81+
Wenn du etwas Wichtiges vergisst, wird Starlight dich daran erinnern.
82+
83+
## Veröffentlichung deiner Starlight Webseite
84+
85+
Sobald du deine Starlight Webseite erstellt und angepasst hast, kannst du sie auf einen Webserver oder Hosting-Plattform deiner Wahl veröffentlichen, einschließlich Netlify, Vercel, GitHub Pages und vielen mehr.
86+
87+
[Lerne mehr über die Veröffentlichung einer Astro Webseite in der Astro Dokumentation.](https://docs.astro.build/de/guides/deploy/)

docs/src/content/docs/de/reference/configuration.md

+18-2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,25 @@ title: Konfigurations­referenz
33
description: Ein Überblick über alle von Starlight unterstützten Konfigurationsoptionen.
44
---
55

6-
## Die Starlight-Integration konfigurieren
6+
## Konfiguriere die `starlight` Integration
77

8-
Du kannst die folgenden Optionen an die Starlight-Integration übergeben.
8+
Starlight ist eine Integration, die auf dem [Astro](https://astro.build) Web-Framework aufbaut. Du kannst dein Projekt innerhalb der Astro-Konfigurationsdatei `astro.config.mjs` anpassen:
9+
10+
```js
11+
// astro.config.mjs
12+
import { defineConfig } from 'astro/config';
13+
import starlight from '@astrojs/starlight';
14+
15+
export default defineConfig({
16+
integrations: [
17+
starlight({
18+
title: "My delightful docs site",
19+
}),
20+
],
21+
});
22+
```
23+
24+
Du kannst die folgenden Optionen an die `starlight` Integration übergeben.
925

1026
### `title` (erforderlich)
1127

docs/src/content/docs/es/reference/configuration.md

+15
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,21 @@ description: Una descripción general de todas las opciones de configuración qu
55

66
## Configurar la integración `starlight`
77

8+
Starlight es una integración construida sobre el framework [Astro](https://astro.build). Puedes configurar tu proyecto dentro del archivo de configuración de Astro `astro.config.mjs`:
9+
10+
```js
11+
// astro.config.mjs
12+
import { defineConfig } from 'astro/config';
13+
import starlight from '@astrojs/starlight';
14+
export default defineConfig({
15+
integrations: [
16+
starlight({
17+
title: "My delightful docs site",
18+
}),
19+
],
20+
});
21+
```
22+
823
Puedes pasar las siguientes opciones a la integración `starlight`.
924

1025
### `title` (requerido)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
1+
---
2+
title: Documents écologiques
3+
description: Découvrez comment Starlight peut vous aider à créer des documentations plus écologiques et à réduire votre empreinte carbone.
4+
---
5+
6+
Les estimations de l'impact climatique de l'industrie du web varient entre [2 %][sf] et [4 % des émissions mondiales de carbone][bbc], ce qui équivaut à peu près aux émissions de l'industrie du transport aérien.
7+
Le calcul de l'impact écologique d'un site web repose sur de nombreux facteurs complexes, mais ce guide contient quelques conseils pour réduire l'empreinte écologique de votre site documentaire.
8+
9+
La bonne nouvelle, c'est que le choix de Starlight est un excellent début.
10+
Selon le Website Carbon Calculator, ce site est [plus propre que 99 % des pages web testées][sl-carbon], produisant 0,01 g de CO₂ par page visitée.
11+
12+
## Poids de la page
13+
14+
Plus une page web transfère de données, plus elle nécessite de ressources énergétiques.
15+
En avril 2023, la page web médiane demandait à l'utilisateur de télécharger plus de 2 000 Ko selon les [données de l'archive HTTP][http].
16+
17+
Starlight construit des pages aussi légères que possible.
18+
Par exemple, lors de sa première visite, un utilisateur téléchargera moins de 50 Ko de données compressées, soit seulement 2,5 % de la médiane des archives HTTP.
19+
Avec une bonne stratégie de mise en cache, les navigations suivantes peuvent télécharger jusqu'à 10 Ko.
20+
21+
### Images
22+
23+
Bien que Starlight fournisse une bonne base de référence, les images que vous ajoutez à vos pages de documentation peuvent rapidement augmenter le poids de vos pages.
24+
Starlight utilise le [support d'actifs optimisés][assets] d'Astro pour optimiser les images locales dans vos fichiers Markdown et MDX.
25+
26+
### Composants d'interface utilisateur
27+
28+
Les composants construits avec des frameworks d'interface utilisateur tels que React ou Vue peuvent facilement ajouter de grandes quantités de JavaScript à une page.
29+
Starlight étant construit sur Astro, les composants de ce type chargent **zéro JavaScript côté client par défaut** grâce à [Astro Islands][islands].
30+
31+
### Mise en cache
32+
33+
La mise en cache est utilisée pour contrôler la durée pendant laquelle un navigateur stocke et réutilise les données qu'il a déjà téléchargées.
34+
Une bonne stratégie de mise en cache permet à l'utilisateur d'obtenir un nouveau contenu dès qu'il est modifié, tout en évitant de télécharger inutilement le même contenu à plusieurs reprises lorsqu'il n'a pas changé.
35+
36+
La façon la plus courante de configurer la mise en cache est d'utiliser l'en-tête HTTP [`Cache-Control`][cache].
37+
Lorsque vous utilisez Starlight, vous pouvez définir une longue durée de mise en cache pour tout ce qui se trouve dans le répertoire `/_astro/`.
38+
Ce répertoire contient des fichiers CSS, JavaScript, et d'autres actifs intégrés qui peuvent être mis en cache pour toujours, réduisant ainsi les téléchargements inutiles :
39+
40+
```
41+
Cache-Control: public, max-age=604800, immutable
42+
```
43+
44+
La configuration de la mise en cache dépend de votre hébergeur. Par exemple, Vercel applique cette stratégie de mise en cache pour vous sans configuration nécessaire, tandis que vous pouvez définir des [en-têtes personnalisés pour Netlify][ntl-headers] en ajoutant un fichier `public/_headers` à votre projet :
45+
46+
```
47+
/_astro/*
48+
Cache-Control: public
49+
Cache-Control: max-age=604800
50+
Cache-Control: immutable
51+
```
52+
53+
[cache]: https://csswizardry.com/2019/03/cache-control-for-civilians/
54+
[ntl-headers]: https://docs.netlify.com/routing/headers/
55+
56+
## Consommation d'énergie
57+
58+
La façon dont une page web est construite peut avoir un impact sur la puissance nécessaire pour fonctionner sur l'appareil d'un utilisateur.
59+
En utilisant un minimum de JavaScript, Starlight réduit la puissance de traitement dont le téléphone, la tablette ou l'ordinateur d'un utilisateur a besoin pour charger et afficher les pages.
60+
61+
Soyez vigilant lorsque vous ajoutez des fonctionnalités telles que des scripts de suivi analytique ou des contenus à forte teneur en JavaScript, comme des vidéos intégrées, car ils peuvent augmenter la consommation d'énergie de la page.
62+
Si vous avez besoin d'analyses, envisagez de choisir une option légère comme [Cabin][cabin], [Fathom][fathom], ou [Plausible][plausible].
63+
Les vidéos intégrées comme celles de YouTube et de Vimeo peuvent être améliorées en attendant de [charger la vidéo lors de l'interaction avec l'utilisateur][lazy-video].
64+
Des paquets comme [`astro-embed`][embed] peuvent aider pour les services communs.
65+
66+
:::tip[Le saviez-vous ?]
67+
L'analyse et la compilation de JavaScript est l'une des tâches les plus coûteuses pour les navigateurs.
68+
Par rapport au rendu d'une image JPEG de même taille, [le traitement de JavaScript peut prendre plus de 30 fois plus de temps][coût-de-js].
69+
:::
70+
71+
[cabin]: https://withcabin.com/
72+
[fathom]: https://usefathom.com/
73+
[plausible]: https://plausible.io/
74+
[lazy-video]: https://web.dev/iframe-lazy-loading/
75+
[embed]: https://www.npmjs.com/package/astro-embed
76+
[cost-of-js]: https://medium.com/dev-channel/the-cost-of-javascript-84009f51e99e
77+
78+
## Hébergement
79+
80+
Le lieu d'hébergement d'une page web peut avoir un impact important sur le degré de respect de l'environnement de votre site de documentation.
81+
Les centres de données et les fermes de serveurs peuvent avoir un impact écologique important, notamment en raison de leur consommation élevée d'électricité et de leur utilisation intensive de l'eau.
82+
83+
Le choix d'un hébergeur utilisant des énergies renouvelables se traduira par une réduction des émissions de carbone pour votre site. Le [Green Web Directory][gwb] est un outil qui peut vous aider à trouver des hébergeurs.
84+
85+
[gwb]: https://www.thegreenwebfoundation.org/directory/
86+
87+
## Comparaisons
88+
89+
Curieux de savoir comment les autres frameworks de documentation se comparent ?
90+
Ces tests avec le [Website Carbon Calculator][wcc] comparent des pages similaires construites avec différents outils.
91+
92+
| Framework | CO₂ par page visitée |
93+
| --------------------------- | ------------------ |
94+
| [Starlight][sl-carbon] | 0.01g |
95+
| [VitePress][vp-carbon] | 0.05g |
96+
| [Sphinx][sx-carbon] | 0.07g |
97+
| [MkDocs][mk-carbon] | 0.10g |
98+
| [Nextra][nx-carbon] | 0.11g |
99+
| [Docusaurus][ds-carbon] | 0.24g |
100+
| [Read the Docs][rtd-carbon] | 0.24g |
101+
| [GitBook][gb-carbon] | 0.71g |
102+
103+
<small>Données collectées le 14 mai 2023. Cliquez sur un lien pour voir les chiffres actualisés.</small>
104+
105+
[sl-carbon]: https://www.websitecarbon.com/website/starlight-astro-build-getting-started/
106+
[vp-carbon]: https://www.websitecarbon.com/website/vitepress-dev-guide-what-is-vitepress/
107+
[sx-carbon]: https://www.websitecarbon.com/website/sphinx-doc-org-en-master-usage-quickstart-html/
108+
[mk-carbon]: https://www.websitecarbon.com/website/mkdocs-org-getting-started/
109+
[nx-carbon]: https://www.websitecarbon.com/website/nextra-site-docs-docs-theme-start/
110+
[ds-carbon]: https://www.websitecarbon.com/website/docusaurus-io-docs/
111+
[rtd-carbon]: https://www.websitecarbon.com/website/docs-readthedocs-io-en-stable-index-html/
112+
[gb-carbon]: https://www.websitecarbon.com/website/docs-gitbook-com/
113+
114+
## Plus de ressources
115+
116+
### Outils
117+
118+
- [Website Carbon Calculator][wcc]
119+
- [Ecograder](https://ecograder.com/)
120+
- [WebPageTest Carbon Control](https://www.webpagetest.org/carbon-control/)
121+
- [Ecoping](https://ecoping.earth/)
122+
123+
### Articles et discussions
124+
125+
- [“Building a greener web”](https://youtu.be/EfPoOt7T5lg), conférence de Michelle Barker
126+
- [“Sustainable Web Development Strategies Within An Organization”](https://www.smashingmagazine.com/2022/10/sustainable-web-development-strategies-organization/), article par Michelle Barker
127+
- [“A sustainable web for everyone”](https://2021.stateofthebrowser.com/speakers/tom-greenwood/), conférence de Tom Greenwood
128+
- [“How Web Content Can Affect Power Usage”](https://webkit.org/blog/8970/how-web-content-can-affect-power-usage/), article de Benjamin Poulain et Simon Fraser
129+
130+
[sf]: https://www.sciencefocus.com/science/what-is-the-carbon-footprint-of-the-internet/
131+
[bbc]: https://www.bbc.com/future/article/20200305-why-your-internet-habits-are-not-as-clean-as-you-think
132+
[http]: https://httparchive.org/reports/state-of-the-web
133+
[assets]: https://docs.astro.build/en/guides/assets/
134+
[islands]: https://docs.astro.build/en/concepts/islands/
135+
[wcc]: https://www.websitecarbon.com/

0 commit comments

Comments
 (0)