TieŔraides vadlīnijas - MDX un citi ietvari

Jums var bÅ«t vislabākais atvērtā pirmkoda projekts, taču, ja tam nav labas dokumentācijas, iespējams, tas nekad neizdosies. Birojā laba dokumentācija neļaus jums atbildēt uz tiem paÅ”iem jautājumiem. Dokumentācija arÄ« nodroÅ”ina, ka cilvēki var saprast projektu, ja galvenie darbinieki pamet uzņēmumu vai mainās lomas. DzÄ«vās vadlÄ«nijas palÄ«dzēs nodroÅ”ināt datu integritāti.

Ja nepiecieÅ”ams rakstÄ«t garu tekstu, Markdown ir lieliska alternatÄ«va HTML. Dažreiz Markdown sintakse nav pietiekama. Å ajā gadÄ«jumā mēs tajā varam izmantot HTML. Piemēram, pielāgoti elementi. Tāpēc, ja veidojat dizaina sistēmu ar vietējiem tÄ«mekļa komponentiem, tos var viegli iekļaut teksta dokumentācijā. Ja izmantojat React (vai jebkuru citu JSX sistēmu, piemēram, Preact vai Vue), varat darÄ«t to paÅ”u, izmantojot MDX.

Šis raksts ir plaŔs pārskats par dokumentācijas rakstīŔanas un vadlīniju izveides rīkiem. Ne visi Ŕeit uzskaitītie rīki izmanto MDX, taču tas arvien vairāk tiek iekļauts dokumentācijas rīkos.

Kas ir MDX?

fails .mdx ir tāda pati sintakse kā Markdown, taču ļauj importēt interaktÄ«vos JSX komponentus un iegult tos savā saturā. Atbalsts Vue komponentiem ir alfa versijā. Lai sāktu darbu ar MDX, vienkārÅ”i instalējiet ā€œCreate React Appā€. Ir spraudņi Next.js un Gatsby. Nākamajai Docusaurus versijai (2. versijai) bÅ«s arÄ« vietējais atbalsts.

Dokumentācijas rakstīŔana ar Docusaurus

Docusaurus rakstīja Facebook. Viņi to izmanto visos atvērtā pirmkoda projektos, izņemot React. Ārpus uzņēmuma to izmanto Redux, Prettier, Gulp un Babel.

TieŔraides vadlīnijas - MDX un citi ietvariProjekti, kuros tiek izmantots Docusaurus.

Docusaurus var izmantot rakstÄ«Å”anai jebkurÅ” dokumentāciju, ne tikai, lai aprakstÄ«tu priekÅ”galu. Tam zem pārsega ir React, taču, lai to izmantotu, jums tas nav jāzina. Ir nepiecieÅ”ami jÅ«su Markdown faili, Ŕķipsniņa burvju un labi strukturēta, formatēta un lasāma dokumentācija ar skaistu dizainu ir gatava.

TieŔraides vadlīnijas - MDX un citi ietvari
Redux vietnē varat redzēt standarta Docusaurus veidni

Vietnēs, kas izveidotas, izmantojot Docusaurus, var bÅ«t arÄ« Markdown emuārs. Prism.js tiek nekavējoties pievienots sintakses izcelÅ”anai. Neskatoties uz to, ka Docusaurus parādÄ«jās salÄ«dzinoÅ”i nesen, vietnē StackShare tas tika atzÄ«ts par 2018. gada labāko rÄ«ku.

Citas satura izveides iespējas

Docusaurus ir Ä«paÅ”i izstrādāts dokumentācijas veidoÅ”anai. Protams, ir miljons un viens veids, kā izveidot vietni ā€“ jÅ«s varat izvietot savu risinājumu jebkurā valodā, CMS vai izmantot statisko vietņu Ä£eneratoru.

Piemēram, React, IBM dizaina sistēmas, Apollo un Ghost CMS dokumentācijā tiek izmantots Gatsby - statisks vietņu Ä£enerators, ko bieži izmanto emuāriem. Ja strādājat ar Vue, VuePress jums ir labs risinājums. Vēl viena iespēja ir izmantot Python rakstÄ«tu Ä£eneratoru - MkDocs. Tas ir atvērts avots un konfigurēts, izmantojot vienu YAML failu. GitBook ir arÄ« laba iespēja, taču tā ir bezmaksas tikai publiskām un nekomerciālām komandām. Varat arÄ« vienkārÅ”i augÅ”upielādēt mardown failus, izmantojot Git, un strādāt ar tiem pakalpojumā Github.

Dokumentācijas komponenti: Docz, Storybook un Styleguidist

VadlÄ«nijas, sistēmu dizains, komponentu bibliotēkas ā€“ lai kā tās sauktu, pēdējā laikā tas ir kļuvis ļoti populārs. Komponentu sistēmu, piemēram, React, un Å”eit minēto rÄ«ku parādÄ«Å”anās ir pārvērtusi tos no iedomÄ«bas projektiem par noderÄ«giem rÄ«kiem.

Storybook, Docz un Styleguidist dara to paÅ”u: parāda interaktÄ«vos elementus un dokumentē to API. Projektam var bÅ«t desmitiem vai pat simtiem komponentu ā€” visiem ar dažādiem stāvokļiem un stiliem. Ja vēlaties, lai komponenti tiktu atkārtoti izmantoti, cilvēkiem ir jāzina, ka tie pastāv. Lai to izdarÄ«tu, vienkārÅ”i izveidojiet komponentu katalogu. VadlÄ«nijas nodroÅ”ina viegli atrodamu visu jÅ«su komponentu pārskatu. Tas palÄ«dz saglabāt vizuālo konsekvenci un izvairÄ«ties no atkārtota darba.

Å ie rÄ«ki nodroÅ”ina ērtu veidu, kā skatÄ«t dažādus stāvokļus. Var bÅ«t grÅ«ti reproducēt katru komponenta stāvokli reālas lietojumprogrammas kontekstā. Tā vietā, lai noklikŔķinātu uz faktiskās lietojumprogrammas, ir vērts izstrādāt atseviŔķu komponentu. Var simulēt grÅ«ti sasniedzamus stāvokļus (piemēram, ielādes stāvokļus).

Paralēli dažādu stāvokļu vizuālai demonstrÄ“Å”anai un Ä«paŔību sarakstam bieži vien ir nepiecieÅ”ams uzrakstÄ«t vispārÄ«gu satura aprakstu ā€“ dizaina pamatojumu, lietoÅ”anas gadÄ«jumus vai lietotāju testÄ“Å”anas rezultātu aprakstus. Markdown ir ļoti viegli iemācÄ«ties ā€” ideālā gadÄ«jumā vadlÄ«nijām vajadzētu bÅ«t kopējam resursam dizaineriem un izstrādātājiem. Docz, Styleguidist un Storybook piedāvā veidu, kā viegli sajaukt Markdown ar komponentiem.

Docz

PaÅ”laik Docz strādā tikai ar React, taču notiek aktÄ«vs darbs, lai atbalstÄ«tu Preact, Vue un tÄ«mekļa komponentus. Docz ir jaunākais no trim rÄ«kiem, taču tam Github ir izdevies savākt vairāk nekā 14 000 zvaigžņu. Docz ievieÅ” divus komponentus āˆ’ <Playground> Šø < Props >. Tie tiek importēti un izmantoti failos .mdx.

import { Playground, Props } from "docz";
import Button from "../src/Button";

## You can _write_ **markdown**
### You can import and use components

<Button>click</Button>

Jūs varat ietīt savus React komponentus ar <Playground>lai izveidotu iebūvētā CodePen vai CodeSandbox analogu - tas ir, jūs redzat savu komponentu un varat to rediģēt.

<Playground>
  <Button>click</Button>
</Playground>

<Props> parādÄ«s visus pieejamos rekvizÄ«tus konkrētajam React komponentam, noklusējuma vērtÄ«bas un to, vai rekvizÄ«ts ir nepiecieÅ”ams.

<Props of={Button} />

Personīgi es uzskatu, ka Ŕī uz MDX balstītā pieeja ir visvieglāk saprotama un ar to visvieglāk strādāt.

TieŔraides vadlīnijas - MDX un citi ietvari

Ja esat Gatsby statisko vietņu ģeneratora cienītājs, Docz piedāvā lielisku integrāciju.

Stila rokasgrāmata

Tāpat kā Docz, piemēri tiek rakstÄ«ti, izmantojot Markdown sintaksi. Styleguidist parastajos failos izmanto Markdown koda blokus (trÄ«skārŔās pēdiņas). .md faili, nevis MDX.

```js
<Button onClick={() => console.log('clicked')>Push Me</Button>

Koda bloki pakalpojumā Markdown parasti tikai parāda kodu. Izmantojot Styleguidist, jebkurÅ” koda bloks ar valodas tagu js, jsx vai javascript tiks renderēts kā React komponents. Tāpat kā Docz, kods ir rediģējams - jÅ«s varat mainÄ«t rekvizÄ«tus un uzreiz redzēt rezultātu.

TieŔraides vadlīnijas - MDX un citi ietvari

Styleguidist automātiski izveidos rekvizītu tabulu no PropTypes, Flow vai Typescript deklarācijām.

TieŔraides vadlīnijas - MDX un citi ietvari

Styleguidist paŔlaik atbalsta React un Vue.

Stāstu grāmata

Stāstu grāmata sevi pozicionē kā ā€œUI komponentu izstrādes vidiā€. Tā vietā, lai rakstÄ«tu piemēru komponentus Markdown vai MDX failos, jÅ«s rakstāt stāsti Javascript failos. Stāsts dokumentējiet komponenta Ä«paÅ”o stāvokli. Piemēram, komponentam var bÅ«t vēstures ielādes stāvoklim un atspējotam stāvoklim (invalÄ«diem).

storiesOf('Button', module)
  .add('disabled', () => (
    <Button disabled>lorem ipsum</Button>
  ))

Stāstu grāmata ir daudz sarežģītāka nekā Stylegudist un Docz. Bet tajā paŔā laikā Ŕī ir vispopulārākā iespēja; projektam Github ir vairāk nekā 36 000 zvaigžņu. Tas ir atvērtā pirmkoda projekts ar 657 lÄ«dzstrādniekiem un pilnas slodzes darbiniekiem. To izmanto Airbnb, Algolia, Atlassian, Lyft un Salesforce. Storybook atbalsta vairāk ietvaru nekā konkurenti ā€” React, React Native, Vue, Angular, Mithril, Ember, Riot, Svelte un parastais HTML.

Nākamajā laidienā tiks ieviestas Docz funkcijas un tiks ieviestas MDX.

# Button

Some _notes_ about your button written with **markdown syntax**.

<Story name="disabled">
  <Button disabled>lorem ipsum</Button>
</Story>

Storybook jaunās funkcijas pakāpeniski tiks ieviestas nākamo dažu mēneÅ”u laikā, un Ŕķiet, ka tas bÅ«s liels solis uz priekÅ”u.

Rezultāti

Rakstu bibliotēkas priekÅ”rocÄ«bas ir izceltas miljonos rakstu par Medium. Ja tas ir izdarÄ«ts labi, tie atvieglo saistÄ«tu produktu izveidi un identitātes saglabāŔanu. Protams, neviens no Å”iem rÄ«kiem maÄ£iski neradÄ«s dizaina sistēmu. Tas prasa rÅ«pÄ«gu dizainu un CSS. Bet, kad ir pienācis laiks padarÄ«t dizaina sistēmu pieejamu visam uzņēmumam, Docz, Storybook un Styleguidist ir lieliskas iespējas.

No tulka. Å Ä« ir mana pirmā pieredze Habrē. Ja atrodat kādas neprecizitātes vai ir ieteikumi raksta uzlaboÅ”anai, rakstiet man personÄ«gi.

Avots: www.habr.com

Pievieno komentāru