Awesome Dart
Dartを扱う資料や関連プロジェクトをまとめたAwesomeリストです。 上流ではアーカイブ済み、または更新終了と案内されています。
目次
- ライブラリ
- ツール
- IDE、エディター、プラグイン
- チュートリアル
- コミュニティ
- その他すべて
クライアントWebアプリフレームワーク
- AngularDart Community - コミュニティが保守するAngularDartのWebサイト、パッケージ、ツールなど。
- Flutter - Android、iOS、Webアプリ向けに記述できる、高性能なクロスプラットフォーム・モバイルアプリ構築フレームワーク。
- MDL/Dart - GoogleのMaterial Design思想に基づく、Web開発者向けDartコンポーネントフレームワークMaterial Design Lite。
- OverReact - 静的型付きReact UIコンポーネントを構築するライブラリ。
サーバーフレームワーク
- Jaguar - 速度、単純さ、拡張性を重視したサーバーフレームワーク。
- Start - 静的ファイル配信、動的リクエスト、WebSocket、JSONレスポンス作成に対応するSinatra風Webフレームワーク。
- Shelf - Webサーバーとその部品を簡単に作成・合成。
- Shelf向けパッケージは多数あり、慣例としてshelf_.
- Vane - サーバー実行環境とミドルウェアシステムを内蔵するフレームワーク。
- Rikulo Stream - リクエストルーティング、フィルタリング、テンプレートエンジン、WebSocket、MVC設計パターン、ファイルベース静的リソースを備えた軽量Webサーバー。
- Alfred - ルーティングとミドルウェアを備えた最小限のExpressJS風サーバー。
- Dart Frog - Dart向けの高速で最小限のバックエンドフレームワーク。
Webフレームワーク
- Jaspr - クライアント側とサーバー側の両レンダリングに対応し、DartでWebサイトを構築する現代的なWebフレームワーク。
その他のフレームワーク
- Rapid Open Hardware Development (ROHD) Framework - ハードウェアを記述・検証するフレームワーク。
クロスプラットフォーム開発
- universal_io - ブラウザーでも動作する_dart:io_。
- universal_html - VM/Flutterでも動作する_dart:html_。
ゲーム開発
- Flame - 最小限のFlutterゲームエンジン。
- StageXL - Flash APIを基にし、ゲームやその他のリッチアプリケーションなど印象的な2Dコンテンツ向けの使いやすく完全なAPIを提供。
- DartRocket - Dartで記述され、StageXL描画エンジンを使うHTML5ゲームフレームワーク。
- Pixi Dart - pixi.js描画エンジンの移植版。
- Ranger - HTML5 Canvasとシーングラフを中心とするゲームエンジン。
アニメーション
- Universal Tween Engine - Aurelien Ribbonが作成した元のJava Universal Tween Engineの移植版。
- Spine Dart - Esoteric Software Spineランタイムの実装。
テンプレート
- mustache_template - dart2jsとdart2nativeに対応するMustacheテンプレートライブラリ。
- jaded - 優れたJade View Engineの移植版。
- mason - Brickと呼ばれる再利用可能なテンプレートを開発者が作成・利用するためのツール。
データベース
- Postgres - より効率的で安全なクエリのため拡張バイナリプロトコルを使うPostgreSQLデータベースドライバー。
- SQLJockey - MySQLコネクター。
- PostgreSQL - PostgreSQLデータベースドライバー。
パッケージ管理
- Pub - パッケージ管理に使用。
- Cloudsmith - Dart、Flutterなどに対応する完全マネージド型パッケージ管理SaaS。[公開/OSSは無料] [$]
ユーティリティ
- Archive - 各種アーカイブ・圧縮形式をエンコード、デコードするライブラリ。
- built_collection - Builderパターンによる不変コレクション。
- built_value - 不変値型、enumクラス、シリアライズ。
- Frappe - Dart向け関数型リアクティブプログラミングライブラリ。DartのStream機能を拡張し、Property/Signalなどの新概念を導入。
- Quiver - 多くのライブラリをより簡単・便利に使えるようにする、または追加機能を提供するユーティリティライブラリ群。
- route_hierarchical - シングルページWebアプリを構築しやすくするDart向けクライアントルーティングライブラリ。
- Darq - .NETライブラリの関数型LINQ移植版。
- Basics - Dartの基本オブジェクトへ便利な拡張メソッドを提供するライブラリ。
依存性注入
- Angular DI - Angularによる依存性注入フレームワーク。
- Dependencies - Mirrorを使わないシンプルでモジュール式の依存性注入システム。
- package: inject - DartとFlutter向けコンパイル時依存性注入。
パーサー
- html - HTML文書を扱うライブラリ。旧称html5lib。
- markdown - クライアントとサーバーの両方でMarkdownをHTMLへ解析。
- PetitParser - スキャナーレス解析、パーサーコンビネーター、構文解析表現文法、Packrat Parserの考え方を組み合わせ、動的に再構成可能なオブジェクトとして文法とパーサーをモデル化。
- XML - XML文書を解析、走査、照会、構築する軽量ライブラリ。
- xmlstream - ストリーミング型イベントベースXMLパーサー。
- YAML - YAMLパーサー。
- Dart Tags - 純粋なDartで記述されたID3タグ解析ライブラリ。
検証
- Constrain - Java Bean Validationに着想を得ながら、Dartの優れた言語機能を活用する制約ベース検証ライブラリ。
- validator.dart - Dart向け文字列検証とサニタイズ。
ORM
- Objectory - MongoDBへ永続化したデータをモデル化、保存、照会する型付き・検査済み環境を提供。
画像
- image - PNG、JPEG、GIF、WebP、TIFF、TGA、PSD、PVR、OpenEXRなど各種画像形式をサーバー・Webアプリで読み込み、操作、保存できるようにする。
テスト
- Guinness - Jasmineライブラリの移植版。
- test - Dartでテストを記述・実行する標準的な方法を提供。
- spec - DartとFlutter向けの合理化されたテストフレームワーク。
Union
- Freezed - 機能を損なわず、シンプルな構文/APIで不変クラスのコードを生成。
クラッシュ監視
- Sentry - すべてのソフトウェアチームがエラーをリアルタイムに発見、分類、優先順位付けできる、セルフホスト・クラウド型エラー監視。
ツール
- DevTools - DartとFlutter向けデバッグ・性能ツールスイート。
- dart2js - DartコードをJavaScriptへコンパイル。
- js2dart - JavaScriptコードをDartへコンパイル。
- Stagehand - Web Starter KitやYeomanなどのツールに着想を得たプロジェクトひな形生成器。
- Crossdart - Pub内パッケージの相互参照付きソースコード。
- Crossdart Github Chrome Extension - GitHub上のDartプロジェクト(ツリー表示とPull Requestの両方)へ「Go to declaration」と「Find Usages」機能を追加。
- gulp-dart - dart2jsを使ってDartコードをJavaScriptへコンパイルするGulpプラグイン。
- dev_compiler - 慣用的で読みやすいJavaScript出力を生成するよう設計されたDartからJavaScriptへのコンパイラー。
- json2dart - JSONから、指定された構造のJSONを解析・生成するDartクラスを生成。
- webdev_proxy - webdevのプロキシラッパー。404をIndexへ再ルーティングし、ローカル実行中にHTML PushStateルーティングを可能にする。
- Dart Code Metrics - コードメトリクスの報告、アンチパターン検査、Analyzer向け追加規則を提供するリンター。
- m2cgen - 訓練済みの古典的MLモデルを依存関係なしのネイティブDartコードへトランスパイルするCLIツール。
- Lakos - Graphvizで内部ライブラリ依存関係を可視化し、依存関係の循環を検出。
- FlutterTrends - pub.dev上の2万以上のFlutterパッケージについて、日次ダウンロード傾向、ランキング、リポジトリ健全性を提供。
マルチスレッド
- isolator - 分離部分と任意種別のフロントエンド部分(BLoC、MobX、ChangeNotifierなど)からなる二部構成状態を簡単に作成。
チュートリアル
- Hello Dart - Dartの楽しい入門。
- Getting Started with Dart & React
- Tour of Heroes - AngularDartの中核的基礎を扱うアプリ。
- Dart for beginner - 初心者向け中国語Dartチュートリアル。
- Resolving Dart package version conflicts, faster than ever - Pub内の任意のパッケージバージョンを使い、パッケージのバージョン競合を解決する方法。
コミュニティ
- Dartlang SubReddit
- Gitter Chat Channel
- Google Group
- Stack Overflow
- Facebook Group (pt-BR)
- Telegram chat (ru-RU)
- Telegram chat (id-ID)
IDE、エディター、プラグイン
- IntelliJ Plugin - WebStorm、IntelliJ IDEA、PhpStorm、PyCharm、RubyMine向けJetBrains製Dartプラグイン。
- Sublime Text Package - Sublime Text 3向けDartパッケージ。
- Emacs Plugin - Dart言語向けEmacsモード。
- Vim Plugin - VimでDartを構文強調。
- Atom Plugin - AtomのDart対応。
- VSCode Plugin - Visual Studio CodeのDart対応。
- DartPad - 軽量オンラインエディター。
- Dart Code - Visual Studio CodeのDart対応。
- Module Linker - GitHub上のモジュールimport文へ直接リンクを追加するChrome拡張。
- Dart Barrel File Generator - DartプロジェクトのBarrelファイルを生成するVSCode拡張。
その他すべて
Pubには常に多くの優れたライブラリが追加されています。要件を満たすライブラリがこのリストで見つからなければ、Pubで検索してください。優れたライブラリを見つけたら、ほかの人も発見できるよう、その情報を載せるPull Requestを歓迎します。まずコントリビューションガイドラインを必ずお読みください。
