CONTRIBUTORS.mdが自動生成になったこんにちは、株式会社トップゲートのわかめ(@vvakame)です。1.0がリリースされ、大変喜ばしい限りです!安定版がリリースされたので、これから普及にはずみが付くでしょう。TypeScriptはJavaScriptのスーパーセットです。TypeScriptは静的型付け言語です。ところが、JavaScriptは動的型付け言語なんですね。JavaScriptの既存ライブラリをTypeScriptで安全に使うには、型情報を後付で与えなければなりません。file)と呼ばれるものです。この型定義ファイルを集積しているサイトが、DefinitelyTypedになります。DefinitelyTypedはMicrosoftの公式ブログでも言及されています。requestのレビューや取り込みを行っています。requestの送り方を解説し、日本からのコントリビュートを増やそうという目論見なわけです。型定義ファイルを使おうDefinitelyTypedからお望みのものを探して普通にダウンロードして使います。ページを開いて、tキーを押すと絞込検索ができるモードになるので、好きなライブラリ名を入力してみてください。有名どころはたいてい見つけることができるはずです。ある型定義ファイルが別の型定義ファイルを参照している場合があります。jqueryui.d.tsはjquery.d.tsに依存しています。このため、jqueryui.d.tsを使いたい場合、jquery.d.tsも併せてダウンロードする必要があります。ダウンロードした型定義ファイルの保存先はtypingsフォルダを作成し、そこに入れておくパターンが主流派になってきました。jquery.d.tsとjquery.d.tsの関係を変えないように、例えば以下のように配置して使います。jqueryui.d.ts手でダウンロードするのがめんどくさい場合、tsdを使いましょう。npmやbowerとサブコマンドの体系が結構違うので、よくREADMEを読むようにしてください(誰か日本語の紹介記事書いてー)。これで、jquery.d.tsとjqueryui.d.tsが上記の構造を保ったままダウンロードされます。型定義ファイルを作ろう詳しく解説するのがめんどくさいので型定義ファイルを自分で作る方法は詳しくは解説しません。DefinitelyTypedに既にある型定義ファイルを見てなんとなく察しましょう。書くと、モジュールやクラスや関数や変数を宣言する時にトップレベルの要素にはdeclareキーワードをつけるだけです。hoge.tsとかやるとhoge.d.tsが生成されるので、それをベースに作るのが楽で良いでしょう。困ってしまったら、Twitterの#typescriptjpハッシュタグとかに放流しておくとサポートが得られるかもしれません。requestを送りましょう。contribute読んで、それから出してね。GitHubの使い方がわかっていて、英語は得意じゃない人向けの解説を書きます。requestを送る前のチェックポイント注意書き:この解説は2014年04月04日時点のWikiをベースに書かれています。直訳ではなく、わかめの感じているベストプラクティスを書きます。新規に型定義ファイルを追加する場合。バージョンライブラリの最新バージョンだけメンテされるので、特にファイル名にバージョン番号を含めたりはしません。これは、ライブラリの複数バージョンをメンテし続ける体力がコミュニティにないからです。いうか誰もやりたがらないよねそんなの。ヘッダをつける型定義ファイルの先頭にはヘッダをつけてください。JSDoc書く頑張って書きましょう。こんなコト書いたら怒られそうだな。テストを書こう型定義ファイルについてテストを書きましょう。良いドキュメント代わりにもなります。hoge.d.tsという型定義ファイルを作った場合、hoge-tests.tsというファイルを作成し、hoge.d.tsの利用例を書いてください。hoge-tests.tsが"動作"するコードである必要はありません。コンパイルが通ることが確認できればよいです。DefinitelyTypedリポジトリは、Travis-CIでテストされています。あなたの型定義ファイルは--noImplicitAnyオプション付きのtscでのコンパイルが成功する必要があります。通ることを確認しましょう。名前空間の使い方について他のライブラリとコンフリクトしないように、内部モジュールを上手く使おう。README.mdに名前を書こうREADME.mdに名前を追加します。既存のを真似して書いてみてください。CONTRIBUTORS.mdに名前を追記してもらう運用でしたが、毎回指摘するのがいい加減めんどくさかったので半自動生成にしました。既存の型定義ファイルを修正する場合。--noImplicitAnyオプション付きでコンパイルが通ればOKです。allで1件もコケなければ大丈夫です。requestを出す時には英語を使います。requestを送る時のタイトルや概要は超適当でも大丈夫です。hoge/hoge.d.tsとかいうタイトルで概要空欄、で問題ありません。レビューする時に役に立つので、既存の型定義を修正する場合は、変更点が本当に正しいことが確認できるようなドキュメントやソースコードのURLがついていると嬉しいですね。無くてもこちらで調べるのでなくてもOKです。requestを送ると、Travis-CIが自動的に検知してテストを実行します。requestを送った後しばらく待ってからページをリロードして結果を確認するとよいでしょう。requestと送った場合、mergeする権限がないので以下のスクリーンショットとは少し違った状態で表示されると思いますが、参考にはなるでしょう。Travis-CIが反応する前。Travis-CIが反応してテストしている最中。Travis-CIでのテストが成功した状態。requestにも反映されます。requestを作り直す必要はありません。requestの作り方forkして、適当に新しくブランチ切ってコミット作って、forkした自分のリポジトリにpushします。GitHub上で適当にブランチが増えていることを確認しましょう。requestを送るUIが出現しているはずです。送信前の変更点の確認を行いましょう。requestStockLike238@vvakameFollowMercariフリマアプリ「メルカリ」を、グローバルで開発しています。upLoginユーザーは見つかりませんでした。