検索
ホームページウェブフロントエンドCSSチュートリアルフロントエンドドキュメント、スタイルガイド、MDXの台頭

フロントエンドドキュメント、スタイルガイド、MDXの台頭

最高のオープンソースプロジェクトでさえ、包括的なドキュメントなしで失敗する可能性があります。内部ドキュメントも同様に重要であり、繰り返しのQ&Aを防ぎ、スタッフの変更に伴い知識の継続性を確保します。十分に文書化されたコーディングガイドラインは、コードベースの一貫性を促進します。

広範なドキュメントのために、MarkdownはRAW HTMLに代わる優れた代替品を提供します。ただし、Markdownの制限は、Webコンポーネントを使用した設計システム用のカスタム要素を含むMarkdownファイルにHTMLを直接埋め込むことで克服できます。 MDXは、React(およびPreactやVueなどのJSX互換フレームワーク)の場合、シームレスな統合を提供します。

この記事では、ドキュメントとスタイルガイドの作成ツールの高レベルの概要を説明します。すべてがMDXを利用しているわけではありませんが、その採用は急速に増加しています。

MDXの理解

.mdxファイルは、標準のマークダウン構文をミラーリングしますが、インタラクティブなJSXコンポーネントのインポートと埋め込みを可能にします。 Vueコンポーネントサポートは現在Alphaにあります。 MDXはCreate Reactアプリと簡単に統合し、next.jsとGatsby用のプラグインが存在します。 Docusaurusバージョン2には、組み込みのサポートも備えています。

Docusaurus:ドキュメントパワーハウス

Facebook(Reactを除く)によって開発されたDocusaurusは、多数の主要なオープンソースプロジェクト(Redux、The Prettier、Gulp、Babel)で利用されています。その汎用性は、フロントエンドのドキュメントを超えて拡張されます。内部的に反応を利用している間、Docusaurusは使用に反応知識を必要としません。マークダウンファイルを、よく構築された視覚的に魅力的なドキュメントサイトに変換します。

Docusaurusサイトでは、マークダウンベースのブログを組み込んで、シームレスな構文ハイライトにPrism.jsを含めることができます。その人気は明らかであり、Stackshareで2018年のトップの新しいツールに選ばれました。

代替ドキュメントソリューション

Docusaurusはドキュメントを専門としていますが、多くの代替品が存在します。カスタムソリューションは、さまざまなバックエンド言語、CMS、または静的サイトジェネレーターを使用して実行可能です。たとえば、IBMの設計システム、Apollo、およびGhost CMSは、ブログによく使用される多用途の静的サイトジェネレーターであるGatsbyを活用しています。 Vuepressは、Vueエコシステム内で牽引力を獲得しています。 Pythonで書かれたオープンソースの静的サイトジェネレーターであるMKDOCSは、簡単なYAML構成を提供します。人気のある有料オプションであるGitBookは、オープンソースと非営利のチームへの無料アクセスを提供します。より簡単な内部ドキュメントのために、GithubのMarkdownレンダリング機能は実行可能なオプションです。

コンポーネントドキュメント:Docz、Storybook、およびStyleGuidist

スタイルガイドとデザインシステムは非常に人気を博しています。コンポーネント駆動型フレームワーク(Reactなど)や関連ツールは、それらを虚栄心プロジェクトから必須リソースに変換しました。

ストーリーブック、Docz、およびStyleGuidistは、インタラクティブなUIコンポーネントの表示とAPIの文書化など、同様の目的を果たします。さまざまな状態とスタイルを使用して多数のコンポーネントを管理するには、発見可能性と再利用のための集中カタログが必要です。スタイルガイドは、簡単に検索可能な概要を提供し、視覚的な一貫性を促進し、冗長な作業を防ぎます。

これらのツールは、さまざまなコンポーネント状態のレビューを簡素化し、ライブアプリケーション内のすべての状態を再現するという課題を克服します。孤立したコンポーネント開発により、到達が困難な状態(状態を積み込む)をock笑することができます。

Storybookの利点に関するDan Greenのコメントは、DoczとStyleGuidistにも同様に当てはまります。

「ストーリーブックは、設計とエンジニアリングの間のコラボレーションを簡素化しました。複雑なセットアップ(Dockerコンテナなど)の必要性を排除します。Waveの場合、短命の複雑なプロセス(例えば、画面の読み込み)でのみ目に見えるコンポーネントを管理します。ストーリーブックの前に、これらのコンポーネントの管理は困難でした。

- ダン・グリーン、ウェーブ・ファイナンシャル

状態の視覚化と小道具のリストを超えて、書かれたコンテンツ(デザインの根拠、ユースケース、ユーザーテストの結果)がコンポーネントのドキュメントを強化します。 Markdownのアクセシビリティにより、デザイナーと開発者の間の共同ドキュメントに最適です。 Docz、StyleGuidist、およびStorybookは、マークダウンをコンポーネントとシームレスに統合します。

docz

現在、Reactのみ(Preact、Vue、およびWebコンポーネントを計画しているサポート)であるDocz(14,000 Github Stars)は、ユーザーフレンドリーな機能を提供しています。それは提供します<playground></playground>そして<props></props>.mdxファイル内で直接使用されるコンポーネント。

 「docz」から{playground、props}をインポートします。
"../src/button"からボタンをインポートします。

## _write_ **マークダウン**
###コンポーネントをインポートおよび使用できます

<playground>
  <button>クリック</button>
</playground>

ラッピング反応コンポーネント<playground></playground>組み込みのインタラクティブなプレビューを作成します。<props></props>コンポーネントのプロップ、デフォルト値、および必要なステータスを表示します。

<props of="{Button}"></props>

DoczのMDXベースのアプローチは直感的で効率的であり、Gatsbyの優れた統合を提供します。

StyleGuidist

StyleGuidistは、MDXの代わりに標準.mdファイル内でマークダウンコードブロック(トリプルバックティック)を使用します。

 「JS」
 console.log( 'clicked')
<code></code>
 <code>>Push Me</code>

jsjsx 、またはjavascriptのタグ付けされたコードブロックは、インタラクティブな反応コンポーネントとしてレンダリングされます。コードは編集可能で、即時の視覚的なフィードバックを提供します。 StyleGuidistは、PropTypes、Flow、またはTypeScript宣言からプロップテーブルを自動的に生成します。それはReactとVueをサポートします。

ストーリーブック

ストーリーブック(36,000 Github Stars)は、UIコンポーネント開発環境です。 MarkDown/MDXの代わりに、ストーリー(コンポーネント状態を表す)にJavaScriptファイルを使用します。

 Storiesof( 'Button'、モジュール)
  .add( 'disabled'、()=>(
    <button disabled>Lorem Ipsum</button>
  )))

Storybookのアプローチは、DoczやStyleGuidistより直感的ではありません。しかし、その人気と広範なフレームワークのサポート(React、React Native、Vue、Angular、Mithril、Ember、Riot、Svelte、HTML)は注目に値します。現在、ドキュメントにはアドオンが必要ですが、将来のリリースにはDoczに触発されたMDXが組み込まれます。

 # ボタン

** Markdown Syntax **で書かれたボタンについて_notes_。


<button>Lorem Ipsum</button>

Storybookの今後のドキュメント機能は、大幅な改善を約束します。

結論

パターンライブラリの価値は広く認められています。よく実行されたライブラリは、視覚的な一貫性と製品の結束を促進します。これらのツールは設計やCSSの専門知識に取って代わるものではありませんが、Docz、Storybook、StyleGuidistは、組織内でデザインシステムを効果的にコミュニケーションするための優れたソリューションを提供します。

以上がフロントエンドドキュメント、スタイルガイド、MDXの台頭の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
@KeyFrames対CSSトランジション:違いは何ですか?@KeyFrames対CSSトランジション:違いは何ですか?May 14, 2025 am 12:01 AM

@keyframesandcsstransitionsdifferincomplexity:@keyframesallowsfordeTailedAnimationのシーケンス、whilecsstransitionshandlesimplestatechanges.usecsstransitionsは、ButtonColorChanges、および@keyframesforintricateanimationslikerotatingingspinnnersを使用します。

静的サイトコンテンツ管理にページCMSを使用します静的サイトコンテンツ管理にページCMSを使用しますMay 13, 2025 am 09:24 AM

私は知っています、私は知っています:たくさんのコンテンツ管理システムオプションが利用可能であり、私はいくつかテストしましたが、実際にはY&#039;知っているものはありませんでしたか?奇妙な価格設定モデル、困難なカスタマイズ、一部は全体になることさえあります&

HTMLのCSSファイルをリンクするための究極のガイドHTMLのCSSファイルをリンクするための究極のガイドMay 13, 2025 am 12:02 AM

CSSファイルをHTMLにリンクすることは、HTMLの一部で要素を使用することで実現できます。 1)タグを使用して、ローカルCSSファイルをリンクします。 2)複数のタグを追加することにより、複数のCSSファイルを実装できます。 3)外部CSSファイルは、そのような絶対URLリンクを使用します。 4)ファイルパスとCSSファイルの読み込み順序の正しい使用を確認し、パフォーマンスを最適化すると、CSSプリプロセッサを使用してファイルをマージできます。

CSS Flexbox vsグリッド:包括的なレビューCSS Flexbox vsグリッド:包括的なレビューMay 12, 2025 am 12:01 AM

FlexBoxまたはグリッドの選択は、レイアウト要件によって異なります。1)FlexBoxは、ナビゲーションバーなどの1次元レイアウトに適しています。 2)グリッドは、雑誌のレイアウトなどの2次元レイアウトに適しています。この2つは、レイアウト効果を改善するためにプロジェクトで使用できます。

CSSファイルを含める方法:メソッドとベストプラクティスCSSファイルを含める方法:メソッドとベストプラクティスMay 11, 2025 am 12:02 AM

CSSファイルを含める最良の方法は、タグを使用してHTMLパーツに外部CSSファイルを導入することです。 1.タグを使用して、外部CSSファイルを導入します。 2。小さな調整のために、インラインCSSを使用できますが、注意して使用する必要があります。 3.大規模プロジェクトでは、@Importを介して他のCSSファイルをインポートするために、SASS以下などのCSSプリプロセッサを使用できます。 4。パフォーマンスのために、CSSファイルをマージし、CDNを使用し、CSSNANOなどのツールを使用して圧縮する必要があります。

FlexBox対グリッド:両方を学ぶべきですか?FlexBox対グリッド:両方を学ぶべきですか?May 10, 2025 am 12:01 AM

はい、Youはrelearnbothlexboxandgrid.1)FlexBoxisidealforone-Dimensional、FlexiblleayoutslikenavigationMenus.2)Gridexcelsintwo-digsignssuchasmagazinelayouts.3)Bothenhanceslaysutibulivedibulisunivedivition、floctonsulururを

軌道力学(またはCSSキーフレームアニメーションの最適化方法)軌道力学(またはCSSキーフレームアニメーションの最適化方法)May 09, 2025 am 09:57 AM

独自のコードをリファクタリングするのはどのように見えますか?ジョン・レアは、彼が書いた古いCSSアニメーションを選び、それを最適化するという思考プロセスを歩きます。

CSSアニメーション:それらを作成するのは難しいですか?CSSアニメーション:それらを作成するのは難しいですか?May 09, 2025 am 12:03 AM

cssanimationsArenotintinlentyhardbutrepracticeanderstanding ofcsspropertiesandtimingfunctions.1)

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません