{"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\/sv\/blog\/administrirovanie\/zhivye-gajdlajny-mdx-i-drugie-frejmvorki","title":{"rendered":"Levande riktlinjer - MDX och andra ramverk","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Du kan ha det b\u00e4sta projektet med \u00f6ppen k\u00e4llkod, men om det inte finns bra dokumentation finns det en risk att det aldrig f\u00e5r fart. God dokumentation p\u00e5 kontoret g\u00f6r att du slipper svara p\u00e5 samma fr\u00e5gor om och om igen. Dokumentationen s\u00e4kerst\u00e4ller ocks\u00e5 att m\u00e4nniskor kan f\u00f6rst\u00e5 projektet om nyckelpersoner l\u00e4mnar f\u00f6retaget eller roller \u00e4ndras. Levande riktlinjer hj\u00e4lper till att s\u00e4kerst\u00e4lla dataintegritet. <\/p>\n<p><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<p>Om du beh\u00f6ver skriva en l\u00e5ng text \u00e4r Markdown ett utm\u00e4rkt alternativ till HTML. Ibland r\u00e4cker inte Markdown-syntaxen till. I s\u00e5 fall kan vi anv\u00e4nda HTML inuti den. Till exempel anpassade element. Om du bygger ett designsystem med inbyggda webbkomponenter \u00e4r det enkelt att inkludera dem i dokumenttexten. Om du anv\u00e4nder React (eller n\u00e5got annat JSX-ramverk, som Preact eller Vue), kan du g\u00f6ra samma sak med MDX. <\/p>\n<p><\/p>\n<p>Denna artikel \u00e4r en \u00f6versikt \u00f6ver verktyg f\u00f6r att skriva dokumentation och skapa riktlinjer. Inte alla verktyg som n\u00e4mns h\u00e4r anv\u00e4nder MDX, men det blir alltmer vanligt i dokumentationsverktyg.<\/p>\n<p><\/p>\n<h2 id=\"chto-takoe-mdx\">Vad \u00e4r MDX?<\/h2>\n<p><\/p>\n<p>Fil <code>.mdx<\/code> har samma syntax som Markdown, men l\u00e5ter dig importera interaktiva JSX-komponenter och b\u00e4dda in dem i ditt inneh\u00e5ll. St\u00f6d f\u00f6r Vue-komponenter \u00e4r fortfarande i alpha. F\u00f6r att b\u00f6rja anv\u00e4nda MDX r\u00e4cker det med att installera \u00abCreate React App\u00bb. Det finns plugins f\u00f6r Next.js och Gatsby. N\u00e4sta version av Docusaurus (version 2) kommer ocks\u00e5 att ha inbyggt st\u00f6d.<\/p>\n<p><\/p>\n<h2 id=\"napisanie-dokumentacii-s-docusaurus\">Skriva dokumentation med Docusaurus<\/h2>\n<p><\/p>\n<p>Docusaurus skapades av Facebook. De anv\u00e4nder det i varje projekt med \u00f6ppen k\u00e4llkod, utom f\u00f6r React. Utanf\u00f6r f\u00f6retaget anv\u00e4nds det av Redux, Prettier, Gulp och Babel.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Levande riktlinjer - MDX och andra ramverk\" src=\"\/wp-content\/uploads\/2019\/05\/a785c47a791d661c89d2091021a2bd3d.png\" style=\"display:block;margin: 0 auto;\" \/><em>Projekt som anv\u00e4nder Docusaurus.<\/em><\/p>\n<p><\/p>\n<p>Docusaurus kan anv\u00e4ndas f\u00f6r att skriva <em>n\u00e5gon<\/em> dokumentation, inte bara f\u00f6r att beskriva frontend. Den bygger p\u00e5 React, men f\u00f6r att anv\u00e4nda den beh\u00f6ver du inte vara bekant med den. Den tar dina Markdown-filer, en gnutta magi och s\u00e5 \u00e4r v\u00e4lstrukturerad, formaterad och l\u00e4sbar dokumentation med vacker design klar. <\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Levande riktlinjer - MDX och andra ramverk\" src=\"\/wp-content\/uploads\/2019\/05\/ada5f480db9937d5902a43d9c5c33ade.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<em>P\u00e5 Redux-webbplatsen kan du se den standardmall som Docusaurus anv\u00e4nder.<\/em><\/p>\n<p><\/p>\n<p>Webbplatser som skapats med Docusaurus kan \u00e4ven inkludera en blogg baserad p\u00e5 Markdown. F\u00f6r syntaxmarkering \u00e4r Prism.js direkt integrerat. Trots att Docusaurus \u00e4r relativt nytt har det erk\u00e4nds som det b\u00e4sta verktyget 2018 p\u00e5 StackShare. <\/p>\n<p><\/p>\n<h2 id=\"drugie-varianty-sozdaniya-kontenta\">Andra alternativ f\u00f6r att skapa inneh\u00e5ll<\/h2>\n<p><\/p>\n<p>Docusaurus \u00e4r speciellt utformat f\u00f6r att skapa dokumentation. Sj\u00e4lvklart finns det miljoner s\u00e4tt att skapa en webbplats \u2014 du kan drifts\u00e4tta din egen l\u00f6sning i valfritt spr\u00e5k, CMS eller anv\u00e4nda en statisk webbplatsgenerator.<\/p>\n<p><\/p>\n<p>Till exempel anv\u00e4nder dokumentationen f\u00f6r React, design systemet IBM, Apollo och Ghost CMS Gatsby \u2014 en statisk webbplatsgenerator som ofta anv\u00e4nds f\u00f6r bloggar. Om du arbetar med Vue kan VuePress vara ett bra alternativ f\u00f6r dig. Ett annat alternativ \u00e4r att anv\u00e4nda en generator skriven i Python \u2014 MkDocs. Den \u00e4r \u00f6ppen och konfigureras med en enda YAML-fil. GitBook \u00e4r ocks\u00e5 ett bra alternativ, men det \u00e4r gratis endast f\u00f6r \u00f6ppna och ideella team. Du kan \u00e4ven helt enkelt ladda upp Markdown-filer med hj\u00e4lp av git och arbeta med dem i GitHub. <\/p>\n<p><\/p>\n<h2 id=\"dokumentirovanie-komponentov-docz-storybook-i-styleguidist\">Dokumentera komponenter: Docz, Storybook och Styleguidist<\/h2>\n<p><\/p>\n<p>Riktlinjer, designsystem, komponentbibliotek \u2014 vad du \u00e4n kallar dem, s\u00e5 har de blivit mycket popul\u00e4ra p\u00e5 sistone. Framv\u00e4xten av komponentramverk som React och verktygen som n\u00e4mns h\u00e4r har m\u00f6jliggjort att de kan omvandlas fr\u00e5n f\u00e5f\u00e4nga projekt till anv\u00e4ndbara verktyg. <\/p>\n<p><\/p>\n<p>Storybook, Docz och Styleguidist g\u00f6r i princip samma sak: de visar interaktivaelement och dokumenterar deras API. Ett projekt kan ha tiotals eller till och med hundratals komponenter \u2014 alla med olika tillst\u00e5nd och stilar. Om du vill att komponenterna ska \u00e5teranv\u00e4ndas, m\u00e5ste m\u00e4nniskor veta att de finns. F\u00f6r det r\u00e4cker det med att katalogisera komponenterna. Riktlinjer ger en l\u00e4ttillg\u00e4nglig \u00f6versikt \u00f6ver alla dina komponenter. Detta hj\u00e4lper till att uppr\u00e4tth\u00e5lla visuell konsekvens och undvika duplicerat arbete.<\/p>\n<p><\/p>\n<p>Dessa verktyg erbjuder ett bekv\u00e4mt s\u00e4tt att visa olika tillst\u00e5nd. Det kan vara sv\u00e5rt att \u00e5terskapa varje komponenttillst\u00e5nd i kontexten av en verklig applikation. Ist\u00e4llet f\u00f6r att klicka kring i en verklig applikation \u00e4r det b\u00e4ttre att utveckla en separat komponent. Du kan modellera sv\u00e5r\u00e5tkomliga tillst\u00e5nd (t.ex. laddningstillst\u00e5nd). <\/p>\n<p><\/p>\n<p>I takt med den visuella visningen av olika tillst\u00e5nd och en lista \u00f6ver egenskaper \u00e4r det ofta n\u00f6dv\u00e4ndigt att skriva en allm\u00e4n beskrivning av inneh\u00e5llet \u2014 designmotiveringar, anv\u00e4ndningsfall eller beskrivningar av resultat fr\u00e5n anv\u00e4ndartester. Markdown \u00e4r mycket enkelt att l\u00e4ra sig \u2014 idealiskt sett b\u00f6r riktlinjer vara en gemensam resurs f\u00f6r designers och utvecklare. Docz, Styleguidist och Storybook erbjuder ett s\u00e4tt att enkelt blanda Markdown med komponenter.<\/p>\n<p><\/p>\n<h2 id=\"docz\">Docz<\/h2>\n<p><\/p>\n<p>Just nu fungerar Docz endast med React, men arbete p\u00e5g\u00e5r aktivt f\u00f6r att st\u00f6dja Preact, Vue och webbkomponenter. Docz \u00e4r det senaste av de tre verktygen, men har samlat mer \u00e4n 14 000 stj\u00e4rnor p\u00e5 Github. Docz presenterar tv\u00e5 komponenter \u2014 <code>&lt;Playground&gt;<\/code> och <code>&lt; Props &gt;<\/code>. De importeras och anv\u00e4nds i filer <code>.mdx<\/code>. <\/p>\n<p><\/p>\n<pre><code class=\"javascript\">import { Playground, Props } from \"docz\";\nimport Button from \"..\\\/src\\\/Button\";\n\n## Du kan _skriva_ **markdown**\n### Du kan importera och anv\u00e4nda komponenter\n\n<Button>klicka<\/Button><\/code><\/pre>\n<p><\/p>\n<p>Du kan svepa dina egna React-komponenter med hj\u00e4lp av <code>&lt;Playground&gt;<\/code>, f\u00f6r att skapa en analog av inbyggda CodePen eller CodeSandbox \u2014 det vill s\u00e4ga att du ser din komponent och kan redigera den. <\/p>\n<p><\/p>\n<pre><code class=\"javascript\"><Button>klicka<\/Button><\/code><\/pre>\n<p><\/p>\n<p><code>&lt;Props&gt;<\/code> visar alla tillg\u00e4ngliga egenskaper f\u00f6r denna React-komponent, standardv\u00e4rden och om egenskapen \u00e4r n\u00f6dv\u00e4ndig.<\/p>\n<p><\/p>\n<pre><code class=\"javascript\">&lt;Props of={Button} \/&gt;<\/code><\/pre>\n<p><\/p>\n<p>Personligen anser jag att detta MDX-baserade tillv\u00e4gag\u00e5ngss\u00e4tt \u00e4r det l\u00e4ttaste att f\u00f6rst\u00e5 och det enklaste att arbeta med.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Levande riktlinjer - MDX och andra ramverk\" src=\"\/wp-content\/uploads\/2019\/05\/71901d25e6fd8bf645b38f96cf74ce89.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Om du \u00e4r ett fan av den statiska webbplatsgeneratorn Gatsby, erbjuder Docz utm\u00e4rkt integration.<\/p>\n<p><\/p>\n<h2 id=\"styleguidist\">Styleguidist<\/h2>\n<p><\/p>\n<p>Precis som i Docz skrivs exempel med Markdown-syntax. Styleguidist anv\u00e4nder Markdown-kodblock (tre citattecken) i vanliga filer <code>.md<\/code> och inte i MDX.<\/p>\n<p><\/p>\n<pre><code class=\"markdown\">```js\n<Button> console.log('klickad')}&gt;Tryck p\u00e5 mig<\/Button><\/code><\/pre>\n<p><\/p>\n<p>Kodblock i Markdown visar vanligtvis bara koden. N\u00e4r du anv\u00e4nder Styleguidist kommer vilket kodblock som helst med spr\u00e5kets tagg <code>js<\/code>, <code>jsx<\/code> eller <code>javascript<\/code> att visas som en React-komponent. Precis som i Docz \u00e4r koden redigerbar \u2014 du kan \u00e4ndra egenskaper och se resultatet omedelbart.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Levande riktlinjer - MDX och andra ramverk\" src=\"\/wp-content\/uploads\/2019\/05\/52a6303bc8c15f2025071a300467c6a6.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Styleguidist kommer automatiskt att skapa en egenskapstabell fr\u00e5n PropTypes, Flow eller Typescript-deklarationer.<\/p>\n<p><\/p>\n<p><img decoding=\"async\" alt=\"Levande riktlinjer - MDX och andra ramverk\" src=\"\/wp-content\/uploads\/2019\/05\/b7173f6fa9376c9fc2670c492a19f35b.png\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><\/p>\n<p>Styleguidist st\u00f6djer nu React och Vue. <\/p>\n<p><\/p>\n<h2 id=\"storybook\">Storybook<\/h2>\n<p><\/p>\n<p>Storybook positionerar sig som \"utvecklingsmilj\u00f6 f\u00f6r UI-komponenter\". Ist\u00e4llet f\u00f6r att skriva exempel p\u00e5 komponenter inuti Markdown- eller MDX-filer skriver du <em> historien <\/em> inne i Javascript-filer. <em> Historien <\/em> dokumentera ett specifikt tillst\u00e5nd av komponenten. Till exempel kan en komponent ha historik f\u00f6r laddningstillst\u00e5nd och avst\u00e4ngd tillst\u00e5nd (<em>inaktiverad<\/em>).<\/p>\n<p><\/p>\n<pre><code class=\"javascript\">storiesOf('Button', module)\n  .add('inaktiverad', () =&gt; (\n    &lt;Button inaktiverad&gt;lorem ipsum&lt;\\\/Button&gt;\n  ))<\/code><\/pre>\n<p><\/p>\n<p>Storybook \u00e4r mycket mer komplex \u00e4n Styleguidist och Docz. Men det \u00e4r samtidigt det mest popul\u00e4ra alternativet, med \u00f6ver 36 000 stj\u00e4rnor p\u00e5 Github. Det \u00e4r ett projekt med \u00f6ppen k\u00e4llkod, som har 657 bidragsgivare och st\u00f6ds av anst\u00e4llda. Anv\u00e4nds av Airbnb, Algolia, Atlassian, Lyft och Salesforce. Storybook st\u00f6der fler ramverk \u00e4n sina konkurrenter \u2014 React, React Native, Vue, Angular, Mithril, Ember, Riot, Svelte och vanlig HTML.<\/p>\n<p><\/p>\n<p>I framtida releaser kommer funktioner fr\u00e5n Docz att inkluderas och MDX kommer att implementeras. <\/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>Nya funktioner f\u00f6r Storybook kommer att introduceras gradvis under de kommande m\u00e5naderna och det verkar som om detta kommer att bli ett stort framsteg.<\/p>\n<p><\/p>\n<h2 id=\"itogi\">Sammanfattning<\/h2>\n<p><\/p>\n<p>F\u00f6rdelarna med m\u00f6nsterbibliotek hyllas i miljontals artiklar p\u00e5 Medium. N\u00e4r allt g\u00f6rs r\u00e4tt underl\u00e4ttar de skapandet av relaterade produkter och uppr\u00e4tth\u00e5llandet av enhetlighet. Selvklart, inget av dessa verktyg kan magiskt skapa en designsystem. Det kr\u00e4ver noggrant utformande av design och CSS. Men n\u00e4r det \u00e4r dags att g\u00f6ra designsystemet tillg\u00e4ngligt f\u00f6r hela f\u00f6retaget, \u00e4r Docz, Storybook och Styleguidist utm\u00e4rkta alternativ. <\/p>\n<p><\/p>\n<p><em>Fr\u00e5n \u00f6vers\u00e4ttaren. Detta \u00e4r min f\u00f6rsta erfarenhet p\u00e5 Habr\u00e9. Om du har hittat n\u00e5gra brister eller har f\u00f6rslag p\u00e5 f\u00f6rb\u00e4ttringar av artikeln \u2014 skicka mig ett meddelande. <\/em><\/p>\n<p>K\u00e4lla: <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.4 - 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\/sv\/blog\/administrirovanie\/zhivye-gajdlajny-mdx-i-drugie-frejmvorki\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sv_SE\" \/>\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\/sv\/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\udd47Levande riktlinjer \u2014 MDX och andra ramverk | ProHoster","description":"Du kan ha det b\u00e4sta projektet med \u00f6ppen k\u00e4llkod, men om det inte har bra dokumentation, finns det en chans att det aldrig kommer att lyfta.","canonical_url":"https:\/\/prohoster.info\/sv\/blog\/administrirovanie\/zhivye-gajdlajny-mdx-i-drugie-frejmvorki","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sv_SE","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\/sv\/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\/sv\/wp-json\/wp\/v2\/posts\/34791","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/comments?post=34791"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/posts\/34791\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media\/26213"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/media?parent=34791"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/categories?post=34791"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sv\/wp-json\/wp\/v2\/tags?post=34791"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}