Reactideを使ってみる

最近、Reactに入門してサーバーサイドエンジニアからフロントエンドエンジニアに転向できなかと試行錯誤しています。

そのなかで同僚にReactideってどうなの？と聞かれたのでちょっと調べて使ってみました。

[Reactide:公式](http://reactide.io/)

環境：Ubuntu18.04
install方法は公式にあります。

まずは、git cloneします。
その後、公式の手順（以下）通り進めていきます。
みた感じスムーズにできそうなのですが、いくつかはまりポイントがありました。

```shell:手順
git checkout 3.0-release
npm install
npm run webpack-production
npm run electron-packager
```


###嵌りポイント1
`npm run webpack-production`

エラーでwebpackが失敗しました。

```error:error
    Error: Cannot find module 'monaco-editor\esm\vs\editor\contrib\gotoSymbol\goToCo
    mmands'
```

どうやらissueとしても上がっているようで、そこに解決方法が載っていました。
[公式のissue](https://github.com/reactide/reactide/issues/184)

cloneしたpackege.jsonを修正します。

```json:package.json
"monaco-editor": "^0.14.3",
"monaco-editor-webpack-plugin": "^1.5.4",
```

↑を↓のように修正

```json:package.json
"monaco-editor": "~0.14.3",
"monaco-editor-webpack-plugin": "~1.5.4",
```

###嵌りポイント2
`electron-packager`

```error:error
12 info lifecycle reactide@3.0.0~electron-packager: Failed to exec electron-packager script
13 verbose stack Error: reactide@3.0.0 electron-packager: `electron-packager . --overwrite --platform=darwin --arch=x64 --icon=/Users/ep/Codesmith/reactide/icons/icon.png --prune=true --out=release-builds`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:332:16)
13 verbose stack     at EventEmitter.emit (events.js:198:13)
13 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:198:13)
13 verbose stack     at maybeClose (internal/child_process.js:982:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
14 verbose pkgid reactide@3.0.0
```

エラーを読むと、`--platform=darwin`と出力されていました。
このスクリプト、MacOS用？？？
という事で、package.jsonの以下の箇所を修正します。

```json:package.json
"electron-packager": "electron-packager . --overwrite --platform=darwin --arch=x64 --icon=/Users/ep/Codesmith/reactide/icons/icon.png --prune=true --out=release-builds"
```

↑を↓へ修正

```json:package.json
"electron-packager": "electron-packager . --overwrite --platform=linux --arch=x64 --icon=/Users/ep/Codesmith/reactide/icons/icon.png --prune=true --out=release-builds"
```

`--platform=darwin`を`--platform=linux `へ

これで全てのコマンドが通りました。

おさらいですが、
>
Reactideのclone用フォルダを作成
git cloneする
cloneしたフォルダに入って、package.jsonを2か所修正する（Ubuntuの場合）
その後、以下のコマンドを順次実行
npm install
npm run webpack-production
npm run electron-packager

完了後、release-builds > Reactide-linux-x64 直下にReactideという実行ファイルが生成されているので実行

![WS000001.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/365572/4b51f713-6a4c-d871-c526-38db59e77cee.jpeg)

実行するとこんな画面が表示されます。
![WS000002.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/365572/c298d274-3967-3eef-5ac8-60f93274f55c.jpeg)



では開発していきます。
まずは　File > New Projectでプロジェクトを作成
***※私がはまったのですが、Ubuntuでプロジェクトを作成するときに、既存のフォルダを指定すると作成できませんでした。必ず、パネル上部のinputエリアから新規プロジェクト名を入力してフォルダを作成する必要がありました***

プロジェクト作成が完了するともう一つReactideが起動しますが、落としてしまって構いません。

![WS000003.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/365572/9c9ea230-0dba-a06b-23d4-55819cd1710e.jpeg)

作成後、projectに手持ちのソースを突っ込んで動かしてみます。

実行方法は他のと基本的に変わりません。
ターミナル開いて

```shell:command
npm start
```

その後、ブラウザで`http://3000`あたりにつなぎましょう。


で、使ってみた感想ですが、、、
これからに期待。

※terminalやシミュレーターを起動するのは右上のアイコンたちです。

![WS000005.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/365572/5a72e5f1-b95d-2f71-7da2-577726261fe5.jpeg)

時々プロジェクトの進捗を覗きに行こうとは思いました。