İçeriğe geç
← Tüm yazılar
· 2 dk okuma Test · Son güncelleme:

Tasarım Sistemi & Bileşen Vitrini

Sitenin tüm bileşenleri, kod blokları, diyagramları ve Markdown öğeleri tek bir modern vitrinde.

Tasarım Sistemi & Bileşen Vitrini

Seri · Bu siteyi kurarken

  1. 1. Yeni blogum yayında
  2. 2. Tasarım Sistemi & Bileşen Vitrini

Bu sayfa sitenin tasarım sistemini ve tüm bileşenlerini tek yerde gösterir 🎨 . Aynı zamanda her şeyin açık/koyu temada doğru çalıştığını doğrulayan canlı bir testtir.

Renk paleti

50

100

200

300

400

500

600

700

Uyarılar (Alert)

Bilgi

Bu bir bilgilendirme kutusudur.

Başarılı

İşlem başarıyla tamamlandı.

Bilgi kutuları (Callout)

Düğmeler & Rozetler

primary
secondary
success
warning
error
outline

Kart (Card)

Astro
İçerik odaklı, hızlı web sitesi çatısı.
Statik üretim, ada mimarisi ve sıfır JS varsayılanı.
Tailwind CSS
Utility-first CSS çatısı.
Tasarım sistemini doğrudan işaretlemede kur.

Sekmeler (Tabs)

Akordeon (Accordion)

Markdown dosyasını ekleyip git push yapman yeterli.
Üstteki güneş/ay düğmesiyle; tercih kaydedilir.

Adımlar (Steps)

  1. Depoyu klonla ve bağımlılıkları kur:

    Terminal window
    git clone https://github.com/MehmetNuri/mehmetnuri.com
    pnpm install
  2. Geliştirme sunucusunu başlat: pnpm dev.

  3. Yeni bir Markdown dosyası ekleyip git push yap. Bitti!

Klavye tuşları (Kbd)

Aramayı açmak için + K, temayı değiştirmek için T.

Artılar & Eksiler (ProsCons)

Artılar

  • + Çok hızlı statik çıktı
  • + Sıfır JS varsayılanı
  • + İçerik odaklı

Eksiler

  • Sunucu tarafı mantık sınırlı
  • Büyük SPA için ideal değil

GitHub kartı (build-time)

withastro/astro

The web framework for content-driven websites. ⭐️ Star to support our work!

TypeScript 59861 3513

Etkileşimli sandbox

YouTube (tıkla-oynat)

Altyazılı görsel (Figure)

Örnek görsel
Figure bileşeniyle altyazı eklenir.

Tipografi & Markdown

Burada kalın, italik, üstü çizili, satır içi kod ve bir bağlantı var.

  • Madde bir
  • Madde iki
    • İç madde
  1. Birinci
  2. İkinci

Görev listesi (GFM)

  • Tamamlanan iş
  • Bekleyen iş

Tablo

ÖzellikEklentiDurum
Diyagramastro-mermaid
Kod bloklarıExpressive Code
Çok dillilikastro-loader-i18n

Sadelik nihai gelişmişliktir. — Leonardo da Vinci

Kod blokları (Expressive Code)

merhaba.js
function selamla(isim) {
const mesaj = `Merhaba, ${isim}!`;
console.log(mesaj); // eklendi
console.log('eski'); // silindi
return mesaj;
}
Terminal
pnpm install
pnpm dev

İlgisiz satırlar katlanır (tıklayınca açılır):

kurulum.js
export function setup() {
5 collapsed lines
const a = 1;
const b = 2;
const c = 3;
const d = 4;
const e = 5;
return a + b + c + d + e;
}

Sekmeli kod grubu

astro.config.mjs
import { defineConfig } from 'astro/config';
export default defineConfig({
site: 'https://mehmetnuri.com',
});
next.config.js
/** @type {import('next').NextConfig} */
module.exports = {
reactStrictMode: true,
};
vite.config.ts
import { defineConfig } from 'vite';
export default defineConfig({
build: { target: 'es2022' },
});

Twoslash (hover tip bilgisi)

Aşağıdaki blokta değişkenlerin üzerine gelince tür bilgisi görünür:

const
const greeting: "Merhaba"
greeting
= 'Merhaba';
const upper =
const greeting: "Merhaba"
greeting
.
String.toUpperCase(): string

Converts all the alphabetic characters in a string to uppercase.

toUpperCase
();
const upper: string
function
function double(x: number): number
double
(
x: number
x
: number): number {
return
x: number
x
* 2;
}
const
const result: number
result
=
function double(x: number): number
double
(21);

Mermaid diyagramları

flowchart TD
    A[Markdown yaz] --> B{Dil?}
    B -->|TR| C["/blog/yazi"]
    B -->|EN| D["/en/blog/yazi"]
    C --> E[GitHub Pages]
    D --> E
sequenceDiagram
    participant Y as Yazar
    participant G as GitHub
    participant P as Pages
    Y->>G: git push
    G->>P: Actions build
    P-->>Y: Yayında!

Görsel

Örnek kapak görseli

Dipnot

Astro, Markdown’da dipnotları destekler1.


Test bitti 🎉 .

Footnotes

  1. Bu bir dipnot örneğidir.

Paylaş

Sıkça sorulan sorular

Bu bileşenleri kendi yazılarımda nasıl kullanırım?

MDX dosyanın başında ilgili bileşeni import edip JSX gibi kullanman yeterli; örnekler bu sayfada.

FAQ bölümü SEO için ne işe yarar?

Yazıya FAQPage structured data ekler; arama motorları ve LLM’ler soruları-cevapları anlamlandırır.