{"id":34791,"date":"2019-10-31T22:00:25","date_gmt":"2019-10-31T19:00:25","guid":{"rendered":"https:\/\/prohoster.info\/blog\/zhivye-gajdlajny-mdx-i-drugie-frejmvorki\/"},"modified":"2019-10-31T22:00:25","modified_gmt":"2019-10-31T19:00:25","slug":"zhivye-gajdlajny-mdx-i-drugie-frejmvorki","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/zhivye-gajdlajny-mdx-i-drugie-frejmvorki","title":{"rendered":"Diretrizes ao vivo \u2014 MDX e outras estruturas","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Voc\u00ea pode ter o melhor projeto de c\u00f3digo aberto, mas se n\u00e3o houver uma boa documenta\u00e7\u00e3o, h\u00e1 uma boa chance de que ele nunca decole. No escrit\u00f3rio, uma boa documenta\u00e7\u00e3o evita que voc\u00ea tenha que responder \u00e0s mesmas perguntas repetidamente. A documenta\u00e7\u00e3o tamb\u00e9m garante que as pessoas possam entender o projeto se funcion\u00e1rios-chave sa\u00edrem da empresa ou se os pap\u00e9is mudarem. Diretrizes ao vivo ajudam a garantir a integridade dos dados. <\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Se voc\u00ea precisa escrever um texto longo, Markdown \u00e9 uma \u00f3tima alternativa ao HTML. \u00c0s vezes, a sintaxe do Markdown n\u00e3o \u00e9 suficiente. Neste caso, podemos usar HTML dentro dele. Por exemplo, elementos personalizados. Portanto, se voc\u00ea estiver construindo um sistema de design com componentes web nativos, \u00e9 f\u00e1cil incorpor\u00e1-los na documenta\u00e7\u00e3o textual. Se voc\u00ea estiver usando React (ou qualquer outro framework JSX, como Preact ou Vue), pode fazer isso da mesma forma usando MDX. <\/p>\n<p><\/p>\n<p>Este artigo \u00e9 uma vis\u00e3o geral abrangente de ferramentas para escrever documenta\u00e7\u00e3o e criar diretrizes. Nem todas as ferramentas listadas aqui utilizam MDX, mas ele est\u00e1 sendo cada vez mais incorporado em ferramentas de documenta\u00e7\u00e3o.<\/p>\n<p><\/p>\n<h2 id=\"chto-takoe-mdx\">O que \u00e9 MDX?<\/h2>\n<p><\/p>\n<p>Arquivo <code>.mdx<\/code> tem a mesma sintaxe que o Markdown, mas permite importar componentes interativos JSX e incorpor\u00e1-los ao seu conte\u00fado. O suporte a componentes Vue est\u00e1 em fase alfa. Para come\u00e7ar a trabalhar com MDX, basta instalar o 'Create React App'. Existem plugins para Next.js e Gatsby. A pr\u00f3xima vers\u00e3o do Docusaurus (vers\u00e3o 2) tamb\u00e9m ter\u00e1 suporte integrado.<\/p>\n<p><\/p>\n<h2 id=\"napisanie-dokumentacii-s-docusaurus\">Escrevendo documenta\u00e7\u00e3o com Docusaurus<\/h2>\n<p><\/p>\n<p>O Docusaurus foi desenvolvido pelo Facebook. Ele \u00e9 utilizado em todos os projetos de c\u00f3digo aberto, exceto o React. Fora da empresa, ele \u00e9 utilizado pelo Redux, Prettier, Gulp e Babel.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Diretrizes ao vivo \u2014 MDX e outras estruturas\" src=\"\/wp-content\/uploads\/2019\/05\/a785c47a791d661c89d2091021a2bd3d.png\" style=\"display:block;margin: 0 auto;\" \/><em>Projetos que utilizam Docusaurus.<\/em><\/p>\n<p><\/p>\n<p>O Docusaurus pode ser usado para escrever <em>(lembrando das pessoas em posi\u00e7\u00f5es elevadas), isso \u00e9 ruim<\/em> documenta\u00e7\u00e3o, n\u00e3o apenas para descrever o frontend. Ele \u00e9 baseado em React, mas n\u00e3o \u00e9 necess\u00e1rio estar familiarizado com ele para utiliz\u00e1-lo. Ele pega seus arquivos Markdown, um toque de m\u00e1gica e uma documenta\u00e7\u00e3o bem estruturada, formatada e leg\u00edvel, com um design bonito, est\u00e1 pronta. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Diretrizes ao vivo \u2014 MDX e outras estruturas\" src=\"\/wp-content\/uploads\/2019\/05\/ada5f480db9937d5902a43d9c5c33ade.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>No site do Redux, voc\u00ea pode ver o modelo padr\u00e3o do Docusaurus.<\/em><\/p>\n<p><\/p>\n<p>Sites criados com Docusaurus tamb\u00e9m podem incluir um blog baseado em Markdown. A sintaxe \u00e9 destacada automaticamente com Prism.js. Embora o Docusaurus tenha sido lan\u00e7ado relativamente h\u00e1 pouco tempo, j\u00e1 foi reconhecido como a melhor ferramenta de 2018 no StackShare. <\/p>\n<p><\/p>\n<h2 id=\"drugie-varianty-sozdaniya-kontenta\">Outras op\u00e7\u00f5es para cria\u00e7\u00e3o de conte\u00fado<\/h2>\n<p><\/p>\n<p>Docusaurus foi especificamente projetado para criar documenta\u00e7\u00e3o. Claro, existem milh\u00f5es de maneiras de fazer um site \u2014 voc\u00ea pode implementar sua pr\u00f3pria solu\u00e7\u00e3o em qualquer linguagem, CMS ou usar um gerador de sites est\u00e1ticos.<\/p>\n<p><\/p>\n<p>Por exemplo, a documenta\u00e7\u00e3o para React, a IBM Design System, Apollo e Ghost CMS usam Gatsby \u2014 um gerador de sites est\u00e1ticos que \u00e9 frequentemente utilizado para blogs. Se voc\u00ea est\u00e1 trabalhando com Vue, VuePress pode ser uma boa op\u00e7\u00e3o para voc\u00ea. Outra alternativa \u00e9 usar um gerador escrito em Python \u2014 MkDocs. Ele \u00e9 open-source e configurado atrav\u00e9s de um \u00fanico arquivo YAML. GitBook tamb\u00e9m \u00e9 uma boa op\u00e7\u00e3o, mas \u00e9 gratuito apenas para equipes abertas e n\u00e3o comerciais. Al\u00e9m disso, voc\u00ea pode simplesmente enviar arquivos Markdown usando git e trabalhar com eles no Github. <\/p>\n<p><\/p>\n<h2 id=\"dokumentirovanie-komponentov-docz-storybook-i-styleguidist\">Documenta\u00e7\u00e3o de componentes: Docz, Storybook e Styleguidist<\/h2>\n<p><\/p>\n<p>Diretrizes, sistemas de design, bibliotecas de componentes \u2014 como voc\u00ea os chama, se tornaram muito populares recentemente. O surgimento de frameworks de componentes, como React, e as ferramentas mencionadas aqui \u2014 permitiu que se transformassem de projetos f\u00fateis em ferramentas \u00fateis. <\/p>\n<p><\/p>\n<p>Storybook, Docz e Styleguidist fazem a mesma coisa: exibem elementos interativos e documentam suas APIs. Um projeto pode ter dezenas ou at\u00e9 centenas de componentes \u2014 todos com diferentes estados e estilos. Se voc\u00ea quer que os componentes sejam reutilizados, as pessoas precisam saber que eles existem. Para isso, \u00e9 suficiente catalogar os componentes. As diretrizes fornecem uma vis\u00e3o geral que \u00e9 f\u00e1cil de pesquisar de todos os seus componentes. Isso ajuda a manter a consist\u00eancia visual e evitar trabalho duplicado.<\/p>\n<p><\/p>\n<p>Essas ferramentas oferecem uma maneira conveniente de visualizar diferentes estados. Pode ser dif\u00edcil reproduzir cada estado de um componente no contexto de um aplicativo real. Em vez de clicar em um aplicativo real, \u00e9 melhor desenvolver um componente separado. Voc\u00ea pode simular estados de dif\u00edcil acesso (por exemplo, estado de carregamento). <\/p>\n<p><\/p>\n<p>Al\u00e9m da demonstra\u00e7\u00e3o visual de v\u00e1rios estados e da lista de propriedades, muitas vezes \u00e9 necess\u00e1rio escrever uma descri\u00e7\u00e3o geral do conte\u00fado \u2014 justificativas de design, casos de uso ou descri\u00e7\u00e3o dos resultados de testes com usu\u00e1rios. O Markdown \u00e9 muito f\u00e1cil de aprender \u2014 idealmente, as diretrizes devem ser um recurso colaborativo para designers e desenvolvedores. Docz, Styleguidist e Storybook oferecem uma maneira f\u00e1cil de misturar Markdown com componentes.<\/p>\n<p><\/p>\n<h2 id=\"docz\">Docz<\/h2>\n<p><\/p>\n<p>Atualmente, o Docz funciona apenas com React, mas h\u00e1 um trabalho ativo para suportar Preact, Vue e componentes da web. O Docz \u00e9 a ferramenta mais nova das tr\u00eas, mas conseguiu reunir mais de 14.000 estrelas no Github. O Docz apresenta dois componentes \u2014 <code>&lt;Playground&gt;<\/code> e <code>&lt; Props &gt;<\/code>. Eles s\u00e3o importados e usados em arquivos <code>.mdx<\/code>. <\/p>\n<p><\/p>\n<pre><code class=\"javascript\">import { Playground, Props } from \"docz\";\nimport Button from \"..\\\/src\\\/Button\";\n\n## Voc\u00ea pode _escrever_ **markdown**\n### Voc\u00ea pode importar e usar componentes\n\n<Button>clique<\/Button><\/code><\/pre>\n<p><\/p>\n<p>Voc\u00ea pode envolver seus pr\u00f3prios componentes React com <code>&lt;Playground&gt;<\/code>, para criar algo semelhante ao CodePen ou CodeSandbox integrados \u2014 ou seja, voc\u00ea v\u00ea seu componente e pode edit\u00e1-lo. <\/p>\n<p><\/p>\n<pre><code class=\"javascript\"><Button>clique<\/Button><\/code><\/pre>\n<p><\/p>\n<p><code>&lt;Props&gt;<\/code> mostrar\u00e1 todas as propriedades dispon\u00edveis para este componente React, valores padr\u00e3o e se a propriedade \u00e9 obrigat\u00f3ria.<\/p>\n<p><\/p>\n<pre><code class=\"javascript\">&lt;Props of={Button} \/&gt;<\/code><\/pre>\n<p><\/p>\n<p>Pessoalmente, considero essa abordagem baseada em MDX a mais f\u00e1cil de entender e a mais simples de trabalhar.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Diretrizes ao vivo \u2014 MDX e outras estruturas\" src=\"\/wp-content\/uploads\/2019\/05\/71901d25e6fd8bf645b38f96cf74ce89.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Se voc\u00ea \u00e9 f\u00e3 do gerador de sites est\u00e1ticos Gatsby, o Docz oferece uma excelente integra\u00e7\u00e3o.<\/p>\n<p><\/p>\n<h2 id=\"styleguidist\">Styleguidist<\/h2>\n<p><\/p>\n<p>Assim como no Docz, os exemplos s\u00e3o escritos usando a sintaxe Markdown. O Styleguidist utiliza blocos de c\u00f3digo Markdown (tr\u00eas aspas) em arquivos normais <code>.md<\/code> em vez de MDX.<\/p>\n<p><\/p>\n<pre><code class=\"markdown\">```js\n<Button> console.log('clicado')}&gt;Pressione Me<\/Button><\/code><\/pre>\n<p><\/p>\n<p>Os blocos de c\u00f3digo no Markdown normalmente mostram apenas o c\u00f3digo. Ao usar o Styleguidist, qualquer bloco de c\u00f3digo com a tag de linguagem <code>js<\/code>, <code>jsx<\/code> ou <code>javascript<\/code> ser\u00e1 exibido como um componente React. Assim como no Docz, o c\u00f3digo \u00e9 edit\u00e1vel \u2014 voc\u00ea pode alterar as propriedades e ver o resultado instantaneamente.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Diretrizes ao vivo \u2014 MDX e outras estruturas\" src=\"\/wp-content\/uploads\/2019\/05\/52a6303bc8c15f2025071a300467c6a6.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>O Styleguidist gerar\u00e1 automaticamente uma tabela de propriedades a partir de declara\u00e7\u00f5es PropTypes, Flow ou Typescript.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Diretrizes ao vivo \u2014 MDX e outras estruturas\" src=\"\/wp-content\/uploads\/2019\/05\/b7173f6fa9376c9fc2670c492a19f35b.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Atualmente, o Styleguidist suporta React e Vue. <\/p>\n<p><\/p>\n<h2 id=\"storybook\">Storybook<\/h2>\n<p><\/p>\n<p>O Storybook se posiciona como \"um ambiente de desenvolvimento de componentes de UI\". Em vez de escrever exemplos de componentes dentro de arquivos Markdown ou MDX, voc\u00ea escreve <em> hist\u00f3rias <\/em> dentro de arquivos Javascript. <em> Hist\u00f3rico <\/em> documentam um estado espec\u00edfico do componente. Por exemplo, um componente pode ter hist\u00f3rias para um estado de carregamento e um estado desativado (<em>desativado<\/em>).<\/p>\n<p><\/p>\n<pre><code class=\"javascript\">storiesOf('Button', module)\n  .add('desativado', () =&gt; (\n    <Button disabled>lorem ipsum<\/Button>\n  ))<\/code><\/pre>\n<p><\/p>\n<p>O Storybook \u00e9 muito mais complexo que o Styleguidist e o Docz. No entanto, \u00e9 a op\u00e7\u00e3o mais popular, com mais de 36.000 estrelas no GitHub. \u00c9 um projeto de c\u00f3digo aberto, com 657 colaboradores e apoiado por funcion\u00e1rios dedicados. \u00c9 utilizado por Airbnb, Algolia, Atlassian, Lyft e Salesforce. O Storybook suporta mais frameworks do que seus concorrentes \u2014 React, React Native, Vue, Angular, Mithril, Ember, Riot, Svelte e HTML comum.<\/p>\n<p><\/p>\n<p>Na pr\u00f3xima vers\u00e3o, recursos do Docz ser\u00e3o incorporados e o MDX ser\u00e1 implementado. <\/p>\n<p><\/p>\n<pre><code class=\"javascript\"># Button\n\nSome _notes_ about your button written with **markdown syntax**.\n\n&lt;Story name=\"disabled\"&gt;\n  &lt;Button disabled&gt;lorem ipsum&lt;\/Button&gt;\n&lt;\/Story&gt;<\/code><\/pre>\n<p><\/p>\n<p>Novas funcionalidades do Storybook ser\u00e3o lan\u00e7adas gradualmente nos pr\u00f3ximos meses e, aparentemente, ser\u00e1 um grande avan\u00e7o.<\/p>\n<p><\/p>\n<h2 id=\"itogi\">Resultados<\/h2>\n<p><\/p>\n<p>As vantagens da biblioteca de padr\u00f5es s\u00e3o exaltadas em milh\u00f5es de artigos no Medium. Quando tudo \u00e9 bem feito, elas facilitam a cria\u00e7\u00e3o de produtos relacionados e a manuten\u00e7\u00e3o da identidade. Claro, nenhuma dessas ferramentas ajudar\u00e1 magicamente a criar um sistema de design. Isso requer um cuidadoso planejamento de design e CSS. Mas quando chegar a hora de disponibilizar o sistema de design para toda a empresa, o Docz, Storybook e Styleguidist s\u00e3o \u00f3timas op\u00e7\u00f5es. <\/p>\n<p><\/p>\n<p><em>Do tradutor. Esta \u00e9 a minha primeira experi\u00eancia no Habr. Se voc\u00ea encontrou alguma imprecis\u00e3o ou tem sugest\u00f5es para melhorar o artigo, envie uma mensagem privada. <\/em><\/p>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/454084\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0423 \u0432\u0430\u0441 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043b\u0443\u0447\u0448\u0438\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u043d\u043e \u0435\u0441\u043b\u0438 \u0443 \u043d\u0435\u0433\u043e \u043d\u0435\u0442\u0443 \u0445\u043e\u0440\u043e\u0448\u0435\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u0435\u0441\u0442\u044c \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c, \u0447\u0442\u043e \u043e\u043d \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0432\u0437\u043b\u0435\u0442\u0438\u0442. \u0412 \u043e\u0444\u0438\u0441\u0435 \u0445\u043e\u0440\u043e\u0448\u0430\u044f \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0432\u0430\u043c \u043d\u0435 \u043e\u0442\u0432\u0435\u0447\u0430\u0442\u044c \u043d\u0430 \u043e\u0434\u043d\u0438 \u0438 \u0442\u0435 \u0436\u0435 \u0432\u043e\u043f\u0440\u043e\u0441\u044b. \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u0442\u0430\u043a\u0436\u0435 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0443\u0435\u0442, \u0447\u0442\u043e \u043b\u044e\u0434\u0438 \u043c\u043e\u0433\u0443\u0442 \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0432 \u043f\u0440\u043e\u0435\u043a\u0442\u0435, \u0435\u0441\u043b\u0438 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044e \u043f\u043e\u043a\u0438\u043d\u0443\u0442 \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0435 \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u0438\u043b\u0438 \u043f\u043e\u043c\u0435\u043d\u044f\u044e\u0442\u0441\u044f \u0440\u043e\u043b\u0438. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":26213,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-34791","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0423 \u0432\u0430\u0441 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043b\u0443\u0447\u0448\u0438\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u043d\u043e \u0435\u0441\u043b\u0438 \u0443 \u043d\u0435\u0433\u043e \u043d\u0435\u0442\u0443 \u0445\u043e\u0440\u043e\u0448\u0435\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u0435\u0441\u0442\u044c \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c, \u0447\u0442\u043e \u043e\u043d \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0432\u0437\u043b\u0435\u0442\u0438\u0442.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/zhivye-gajdlajny-mdx-i-drugie-frejmvorki\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0416\u0438\u0432\u044b\u0435 \u0433\u0430\u0439\u0434\u043b\u0430\u0439\u043d\u044b \u2014 MDX \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0438 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0423 \u0432\u0430\u0441 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043b\u0443\u0447\u0448\u0438\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u043d\u043e \u0435\u0441\u043b\u0438 \u0443 \u043d\u0435\u0433\u043e \u043d\u0435\u0442\u0443 \u0445\u043e\u0440\u043e\u0448\u0435\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u0435\u0441\u0442\u044c \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c, \u0447\u0442\u043e \u043e\u043d \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0432\u0437\u043b\u0435\u0442\u0438\u0442.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/zhivye-gajdlajny-mdx-i-drugie-frejmvorki\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:00:25+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:00:25+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Diretrizes ao vivo \u2014 MDX e outros frameworks | ProHoster","description":"Voc\u00ea pode ter o melhor projeto de c\u00f3digo aberto, mas se ele n\u00e3o tiver uma boa documenta\u00e7\u00e3o, h\u00e1 uma grande chance de que nunca decole.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/zhivye-gajdlajny-mdx-i-drugie-frejmvorki","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0416\u0438\u0432\u044b\u0435 \u0433\u0430\u0439\u0434\u043b\u0430\u0439\u043d\u044b \u2014 MDX \u0438 \u0434\u0440\u0443\u0433\u0438\u0435 \u0444\u0440\u0435\u0439\u043c\u0432\u043e\u0440\u043a\u0438 | ProHoster","og:description":"\u0423 \u0432\u0430\u0441 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043b\u0443\u0447\u0448\u0438\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c \u043a\u043e\u0434\u043e\u043c, \u043d\u043e \u0435\u0441\u043b\u0438 \u0443 \u043d\u0435\u0433\u043e \u043d\u0435\u0442\u0443 \u0445\u043e\u0440\u043e\u0448\u0435\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u0435\u0441\u0442\u044c \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c, \u0447\u0442\u043e \u043e\u043d \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0432\u0437\u043b\u0435\u0442\u0438\u0442.","og:url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/zhivye-gajdlajny-mdx-i-drugie-frejmvorki","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:00:25+00:00","article:modified_time":"2019-10-31T19:00:25+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"34791","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 20:38:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:15:37","updated":"2026-01-21 20:38:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/34791","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=34791"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/34791\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media\/26213"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=34791"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=34791"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=34791"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}