Skip to content

Latest commit

 

History

History

ja

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 

s2s


Build Status Coverage Status tested with jest styled with prettier lerna

AST のパワーによる超高速コーディング

詳しくは、examplesを見てください。

コンセプト

ソースコードからソースコードへのリアルタイムコード生成。あなたのエディタを監視して、リアルタイムにコードを生成します。

変更したファイル名が一致すると、単一の BabelPlugin を実行し、それをコードへと反映します。

利点

  • エディタにロックインされません。Atom でも VSCode でも使えます。
  • s2s 自体にロックインされません。単なる BabelPlugin を書くだけで拡張できます。

Articles

日本語

Users

SSconnect/ssconnect

もし、あなたの会社やプロジェクトで s2s を使っている場合は、プルリクエストを送ってリストに追加してくださると嬉しいです。(アルファベット順でお願いします)

クイックスタート

では、本当に小さいサンプルから始めましょう。しかし、s2s の力を知るには十分です。

はじめに取り組むのは、以下のように、Flow の型情報を利用して、変数の初期化を自動で行うサンプルです。

https://gyazo.com/c6de73c7c9044520fbbca95881c2a927

準備

レポジトリをクローンし、依存をインストールしてください。

$ git clone --depth=1 git@github.com:akameco/s2s.git
$ cd examples/getting-started
$ yarn

使い方

ルートにあるs2s.config.jsを確認してください。これが、s2s の設定ファイルです。 watch で監視するディレクトリを指定し、plugins は配列を指定します。もし、webpack に馴染みがあれば似たように書けるでしょう。詳しい設定については、Configを確認してください。

module.exports = {
  watch: './**/*.js',
  plugins: [
    {
      test: /.*.js$/,
      plugin: ['s2s-variable-initializing'],
    },
  ],
}

Run

$ yarn run s2s

src/index.jsをエディタで開いて、var user: Userと入力し保存してください。初期値が自動生成されましたか?

これで、クリックスタートを終わります。ご苦労様でした。

プラグイン

プラグインを組み合わせる

複数のプラグインを組みわせると、より力を発揮します。以下の例は、Action の型を定義すると、Action の定数、アクションクリエイター、reducer、reducer のテストをそれぞれ生成します。

plugins

もっと多くの情報が必要ですか? Examples を確認してください。

もっと Examples

オフィシャルプラグイン

貢献

どのような貢献でもウェルカムです。

また、このレポジトリは、add-contributorsSpec に従って運用しています。

あたながコードとテストを書いて貢献した場合、以下のコマンドを打ってください。

$ yarn run add-contributors GitHubのアカウント名 code,test

また、ドキュメントの追加や修正を行った場合は以下のコマンドです。

$ yarn run add-contributors GitHubのアカウント名 doc

詳しくは、all-contributorsを参照してください。

どのような貢献でも待っています。