Buna bir bakın.
Bileşenler
Bileşenler bir arayüz parçasını kolaylıkla tekrar tekrar kullanmanıza ve tutarlı bir şekilde stillendirmenize olanak sağlar. Bağlantı kartı ya da bir Youtube yerleştirmesi örnek olarak verilebilir. Starlight MDX dosyaları içerisindeki bileşenlerin kullanılmasını destekler ve bazı ortak bileşenleri kullanımınıza sunar.
Astro dokümantasyonunda bileşen oluşturma hakkında daha fazla bilgi edinin.
Bileşen Kullanımı
Bir bileşeni MDX dosyanıza dahil ederek kullanabilir ve sonrasında JSX etiketi olarak oluşturabilirsiniz.
HTML etiketleri gibi görünür ancak ilk harfi büyük olarak ismi uyan import
ifadesidir:
Starlight’ın Astro’dan aldığı güç sayesinde, MDX dosyalarınız içerisinde desteklenen herhangi bir arayüz çerçevesi ile (React, Preact, Svelte, Vue, Solid, Lit, ve Alpine) oluşturulmuş bileşenlerinizi destekleyebilirsiniz. Astro dokümantasyonunda MDX içerisinde bileşen kullanmak hakkında daha fazlasını öğrenin.
Starlight stilleri ile uyumluluk
Starlight Markdown içeriklerinize varsayılan stillendirmeyi uygular, örneğin elemanlar arasına marjin ekler.
Bu stiller bileşeninizin görünümü ile çakışıyorsa, bileşeninizde stili etkisiz kılmak için not-content
sınıfını bileşeninize ekleyin.
Yerleşik Bileşenler
Starlight bazı yerleşik bileşenleri ortak dokümantasyon ihtiyaçları için sunar.
Bu bileşenler @astrojs/starlight/components
paketinde mevcuttur.
Sekmeler
<Tabs>
ve <TabItem>
bileşenlerini kullanarak sekmeli arayüz gösterebilirsiniz.
Her <TabItem>
bileşenini kullanıcılara göstermek için label
sahibi olması zorunludur.
Starlight’ın yerleşik ikonlarından birini, etiketin yanında kalması için zorunlu olmayan icon
niteliğini kullanın.
Yukarıdaki kod, sayfa üzerinde aşağıdaki gibi sekmeler oluşturur:
Sirius, Vega, Betelgeuse
Io, Europa, Ganymede
Senkronize Sekmeler
syncKey
niteliği ekleyerek çoklu sekme gruplarınızı senkronize edin.
Sayfadaki aynı syncKey
değerine sahip tüm <Tabs>
bileşenleri aynı etkin etiketi görüntüler. Bu, okuyucunuza bir kez seçme (örneğin okuyucunuzun işletim sistemi ya da paket yöneticisi) ve sayfa boyunca yansıyan seçimi görmesine olanak tanır.
İlişkili sekmeleri senkronize etmek için, her <Tabs>
bileşenine özdeş syncKey
niteliği ekleyin ve hepsinin aynı <TabItems>
etiketi kullandığına emin olun:
Yukarıdaki kod, sayfa üzerinde aşağıdaki gibi çıktı oluşturur:
Bazı yıldızlar:
Bazı ötegezegenler:
Kartlar
<Card>
bileşenini kullanarak Starlight’ın stiline uyan kutu içerisinde yer alan içeriği gösterebilirsiniz.
Birden fazla kartı <CardGrid>
bileşeni içinde, yeteri kadar boşluk olduğu zaman kartları yan yana sıralı olarak göstermek için sarmalayın.
<Card>
bileşeni title
değerine ihtiyaç duyar ve opsiyonel olarak Starlight’ın kurulu ikonlarından birinin ismini taşıyan icon
özelliğini içerebilir.
Yukarıdaki kod, sayfa üzerinde aşağıdaki gibi çıktı oluşturur:
Yıldızlar
Sirius, Vega, Betelgeuse
Uydular
Io, Europa, Ganymede
Bağlantı kartları
Belirgin olarak farklı sayfalara bağlantı eklemek için <LinkCard>
bileşenini kullanın.
<LinkCard>
title
değerine ve href
özelliğine ihtiyaç duyar. İsteğe bağlı olarak description
ya da target
gibi bağlantı özelliklerini ekleyebilirsiniz.
Birden fazla <LinkCard>
bileşeninizi, yeterince boşluk olduğunda yan yana olacak şekilde göstermek için <CardGrid>
içerisinde gruplayın.
Yukarıdaki kod, sayfa üzerinde aşağıdaki gibi çıktı oluşturur.
Ara bölümler
Ara bölümler (ayrıca “uyarı” ve “açıklama balonu” olarak da bilinir), sayfanın ana içeriği ile birlikte ikincil bilgi göstermek için kullanışlıdır.
<Aside>
bileşeni zorunlu olmayan note
(varsayılan), tip
, caution
ya da danger
değerini alan type
niteliğine sahiptir. title
niteliği eklemek varsayılan ara bölüm başlığını değiştirir.
Yukarıdaki kod, sayfa üzerinde aşağıdaki gibi çıktı oluşturur:
Starlight, ayrıca <Aside>
bileşenine alternatif olarak Markdown ve MDX içerisinde ara bölüm oluşturmak için özel bir sözdizimi sağlar.
“Markdown’da İçerik Yazmak” rehberine özel sözdizimi detayları için bakın.
Kod
<Code>
bileşenini Markdown kod bloğu kullanmanın mümkün olmadığı zaman sözdizim vurgulu kod oluşturmak için kullanın - örneğin dosyalar, veritabanları ve API’ler gibi harici kaynaklardan gelen verileri oluşturmak için.
<Code>
bileşeninin destekleği niteliklerin tüm detaylarını Expressive Code “Code Component” dokümanında inceleyin.
Yukarıdaki kod, sayfa üzerinde aşağıdaki gibi çıktı oluşturur:
Alınan kod
Vite’nin ?raw
son ekini herhangi kod dosyasını string olarak almak için kullanın.
<Code>
bileşenine alınan bu string’i sayfanıza dahil etmek için ekleyin.
Yukarıdaki kod, sayfa üzerinde aşağıdaki gibi çıktı oluşturur:
Dosya Ağacı
<FileTree>
bileşenini dizin yapısını dosya ikonları ve toplanabilir alt dizinleri göstermek için kullanın.
Dosyalarınızın yapısını ve dizinleri <FileTree>
içerisinde numaralandırılmamış Markdown listesi ile açıkça belirtin.
İç içe yerleşmiş liste kullanarak ya da belirli bir içeriksiz dizin oluşturmak için liste elemanının sonuna /
ekleyerek alt dizin oluşturun.
Aşağıdaki sözdizimi dosya ağacınının görünümünü özelleştirmek için kullanılabilir:
- Dosya ya da dizinin ismini kalın yaparak vurgulayın. Örneğin
**README.md**
. - Dosya ya da dizine isimden sonra metin ekleyerek yorum ekleyin.
- Dosyalara ya da dizinlere isim olarak
...
ya da…
yazımını kullanarak ayrılmış bilgi alanı ekleyin.
Yukarıdaki kod, sayfa üzerinde aşağıdaki gibi çıktı oluşturur:
- astro.config.mjs önemli bir dosya
- package.json
- README.md
Dizinsrc
Dizincomponents
- Header.astro
- …
Dizinpages/
- …
Adımlar
<Steps>
bileşenini numaralanmış görevler listesini biçimlendirmek için kullanın.
Her aşamasının açıkça belirtilmeye ihtiyaç duyan çok karmaşık adım adım rehberleri oluşturmak için kullanışlıdır.
Standart Markdown sıralanmış listesini <Steps>
bileşeni ile sarmalayın.
<Steps>
bileşeni içerisinde tüm olağan Markdown sözdizimi uygulanabilir.
Yukarıdaki kod, sayfa üzerinde aşağıdaki gibi çıktı oluşturur:
-
Bileşeni MDX dosyasına dahil edin:
-
Sıralanmış liste elemanlarını
<Steps>
ile sarmalayın.
İkon
Starlight, içeriğinizde görünmesi için <Icon>
bileşenini kullanarak bir grup ortak ikonları kullanımınıza sunar.
Her <Icon>
name
değerine ihtiyaç duyar ve isteğe bağlı olarak label
eklenebilir.
size
ve color
nitelikleri ikonun görünümünü CSS birimleri ve renk değerleri ile ayarlamak için kullanılabilir.
Yukarıdaki kod, aşağıdaki gibi çıktı oluşturur:
Tüm İkonlar
Mevcut tüm ikonların listesi aşağıdaki gibi ilişkili isimleriyle gösterilmiştir. Bileşen kodunu kopyalamak için bir ikona tıklayın.