Dokumentáció

Hogyan dokumentáld a komponenseidet.

A jó dokumentáció elengedhetetlen ahhoz, hogy a komponenseid hozzáférhetőek és könnyen használhatóak legyenek. Ez az útmutató vázolja azokat a kulcselemeket, amelyeket minden komponens dokumentációs oldalnak tartalmaznia kell.

Dokumentációs keretrendszer

A dokumentáció méretezéséhez használhatsz egy dokumentációs keretrendszert. Számos lehetőség áll rendelkezésre a projekt(je)id nyelvétől és igényeitől függően. Népszerű opciók például:

  • Fumadocs - Gyors, funkciógazdag dokumentációs keretrendszer Next.js-hez
  • Nextra - Markdown-alapú dokumentáció beépített kereséssel és témázással
  • Content Collections - Típusbiztos tartalomkezelés dokumentációhoz
  • Docusaurus - Funkciógazdag dokumentációs oldalak verziókezelés támogatással
  • VitePress - Vue-alapú statikus oldalgenerátor, dokumentációra optimalizálva

Ideálisan a választott keretrendszer támogassa a szintaxiskiemelést, egyedi komponenseket, és általánosságban legyen jól megtervezett.

Alapvető dokumentációs szekciók

Áttekintés

Kezdd egy rövid bevezetéssel, amely elmagyarázza, mit csinál a komponens és mikor érdemes használni.

Demó, forráskód és előnézet

Az első benyomás érdekében érdemes egy demót mellékelni, amely a komponenst működés közben mutatja, valamint a demó létrehozásához használt kódot.

Ha egy nyílt forráskódú Regiszter-t használsz, beilleszthetsz egy előnézetet is a komponens létrehozásához használt forráskódról.

Használj kódtömböket szintaxiskiemeléssel és másolás a vágólapra funkcióval. Fontold meg fül alapú felületek használatát, hogy ezek között válthass anélkül, hogy a lap rendezetlenné válna.

Telepítés

Tartalmazz egy egyértelmű utasítást arra vonatkozóan, hogyan telepíthető a komponens. Ideális esetben ez egy parancs legyen, amit kimásolhatsz és beilleszthetsz a terminálodba.

Ha shadcn/ui-re építesz, használhatod a shadcn CLI-t a komponens telepítéséhez, pl.

npx shadcn@latest add <your-component-url>

Ha közvetlenül egy Piac-ra publikálsz, használhatod a piactér CLI-jét a komponens telepítéséhez, pl.

npx shadcn@latest add https://21st.dev/r/<your-author>/<your-component>

Ha nem a shadcn/ui-t használod, de egy Regiszter-t építesz, készíthetsz saját CLI-t a komponens telepítéséhez, pl.

npx your-registry-cli@latest add <your-component-url>

Végül, ha npm-re publikálsz, használhatod az npm CLI-t a komponens telepítéséhez, pl.

npm install <your-component-name>

Ha több telepítési lehetőséget szeretnél megjeleníteni, mint fent, használhatsz például a Fumadocs package-install szintaxisát.

Funkciók

Sorold fel a komponensed kulcsfontosságú funkcióit, hogy a felhasználók gyorsan megérthessék a képességeit és előnyeit. Például:

  • Testreszabható – Könnyen igazítható stílusok, méretek és viselkedés az igényekhez.
  • Alapból hozzáférhető – Követi a legjobb gyakorlatokat billentyűzet-navigáció, ARIA szerepek és képernyőolvasó támogatás terén.
  • Komponálható – Úgy tervezték, hogy zökkenőmentesen működjön más komponensekkel és mintákkal.
  • Típusbiztos – Átfogó TypeScript típusokkal érkezik a maximális biztonság és automatikus kiegészítés érdekében.
  • Témázás támogatás – Integrálható a dizájn tokenjeiddel vagy témarendszereddel.
  • Könnyű – Minimális függőségek és teljesítményre optimalizálva.
  • SSR/SSG kompatibilis – Működik szerveroldali és statikus renderelő keretrendszerekkel.
  • Jól dokumentált – Tartalmaz világos használati példákat és API referenciát.

Személyre szabhatod ezt a listát a komponensednek megfelelően. Emeld ki, mi teszi egyedivé vagy különösen hasznossá a fejlesztők számára.

Példák

Mutasd be a komponens rugalmasságát gyakorlati példákkal:

  • Variánsok - Különböző vizuális stílusok vagy elérhető méretek
  • Állapotok - Betöltés, letiltott, hiba vagy siker állapotok
  • Haladó használat - Összetett forgatókönyvek és szélsőséges esetek
  • Kompozíció - Hogyan működik a komponens más komponensekkel
  • Reszponzív viselkedés - Hogyan alkalmazkodik különböző képernyőméretekhez

Minden példának tartalmaznia kell a renderelt kimenetet és a hozzá tartozó kódot is.

Props és API referencia

Dokumentáld az összes elérhető prop-ot, metódust és konfigurációs lehetőséget. Érdemes a kapcsolódó prop-okat csoportosítani és kiemelni a gyakran használtakat. Minden prop esetén tüntesd fel:

  • Név - A prop azonosítója
  • Típus - TypeScript típusdefiníció
  • Alapértelmezett - Az alapértelmezett érték, ha nincs megadva
  • Kötelező - Hogy a prop kötelező-e
  • Leírás - Mit csinál a prop és mikor használjuk

Ha Fumadocs-ot használsz, érdemes megfontolnod az Auto Type Table használatát az pontosság biztosítása és a karbantartási terhek csökkentése érdekében.

Hozzáférhetőség

Dokumentáld, hogyan támogatja a komponensed a hozzáférhetőségi funkciókat:

  • Billentyűzet-navigációs minták
  • ARIA attribútumok és szerepek
  • Képernyőolvasó támogatás
  • Fókuszkezelés
  • Színkontraszt szempontok

Változásnapló és verziózás

Hasznos lehet minden komponens dokumentációs oldalán fenntartani egy változásnaplót, amely lefedi:

  • Verziószámok szemantikus verziózás szerint
  • Új funkciók és fejlesztések
  • Hibajavítások
  • Törő változások
  • Migrációs útmutatók főverzió frissítésekhez

Segíts a felhasználóknak megérteni, mi változott a verziók között és hogyan lehet biztonságosan frissíteni. Tartalmazz kódpéldákat, amelyek bemutatják a törő változások előtti/utáni mintákat.

Ha a szintaxiskiemelő keretrendszered támogatja (például Shiki), érdemes lehet egy diff transzformer jelölést használni a verziók közötti változások bemutatásához.

Legjobb gyakorlatok

  • Tartsd naprakészen a dokumentációt a kódbeli változásokkal
  • Használj valós példákat, amelyek valódi problémákat oldanak meg
  • Tartalmazz gyakori buktatókat és hibakeresési tippeket
  • Adj teljesítménybeli megfontolásokat, ha releváns
  • Linkelj kapcsolódó komponensekre és mintákra
  • Tedd az összes kódpéldát futtathatóvá és tesztelve biztosíthatóvá