{"id":15973724,"url":"https://github.com/c-bata/mdnote","last_synced_at":"2025-04-04T16:21:13.808Z","repository":{"id":36119998,"uuid":"40422674","full_name":"c-bata/mdnote","owner":"c-bata","description":"Markdown editor with React.js, Babel and Electron.","archived":false,"fork":false,"pushed_at":"2015-11-12T11:53:55.000Z","size":208,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-10T01:46:16.230Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/c-bata.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-08-09T02:23:42.000Z","updated_at":"2016-04-12T13:23:32.000Z","dependencies_parsed_at":"2022-09-03T11:02:29.640Z","dependency_job_id":null,"html_url":"https://github.com/c-bata/mdnote","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/c-bata%2Fmdnote","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/c-bata%2Fmdnote/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/c-bata%2Fmdnote/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/c-bata%2Fmdnote/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/c-bata","download_url":"https://codeload.github.com/c-bata/mdnote/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247208404,"owners_count":20901570,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-07T21:06:40.837Z","updated_at":"2025-04-04T16:21:13.785Z","avatar_url":"https://github.com/c-bata.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# mdnote\n\nMarkdownで書けるメモ帳\n\n## 目的\n\n勉強用. 主に以下のこと.\n\n- ES6(Babel)\n- testing(mocha, power-assert)\n- React.js\n- Electron\n\n\n## 所感など\n\n- React.js は感覚的には AngularJS よりしっくり来てる\n    - とりあえずstateを変更すれば全部描画しなおしてくれるのすごい助かる。\n    - AngularJSより優先して勉強したい\n        - AngularJS でもこれぐらいならサクッと書けそうなんだけど、API多すぎてReact.jsに比べて覚えるの辛かった\n        - Angular2.0でAPI大きく変更するらしいしそれよりはこちらを優先したい.\n        - あとこれも感覚的なんだけど、AngularJS に比べて拡張するときにどこを書き直せばいいか分かりやすい\n    - ES6 で書こうとするとところどころはまった。\n        - [ここ](http://qiita.com/tell-k/items/a449f60ad3494fda00fa) にあることを最初からある程度読んでおいた方がいい\n\n\n- power-assertとespower-babelすごくいい\n    - power-assertのレポートは分かりやすい\n    - 実装もテストもES6で書いてるんだけどコレ使えばうまく変換してくれる。\n\n- ES6\n    - アロー関数はcoffeescriptの影響かな？シンプルにかけていい\n    - class構文は\n\n- Electron\n\n    予想以上に手軽。簡単にDesktopアプリに出来る。\n\n## 参考資料\n\n- https://facebook.github.io/react/docs/tutorial-ja-JP.html\n\n    公式チュートリアル。あまり読まなかった.\n\n- http://reactfordesigners.com/labs/reactjs-introduction-for-people-who-know-just-enough-jquery-to-get-by/\n\n    めちゃくちゃ分かりやすいReact.jsのチュートリアル。コレをベースにMarkdown Editor実装.\n\n- http://sadah.hatenablog.com/entry/2015/08/03/085828\n\n    ES6で書くときにハマるところが多いのですが、この記事に何度も助けられました。\n\n    ```\n    // ES6でイベントリスナーを設定する場合、 .bind(this) を追加.\n    onChange={this.handleChange.bind(this)}\n    ```\n\n- http://facebook.github.io/react/blog/2015/01/27/react-v0.13.0-beta-1.html\n\n    mixinは現時点だとサポートされてない。ES6的に厳しいらしい。\n    bindがどうのこうのはココにも書かれていた。\n\n- http://qiita.com/sugarshin/items/3ce64420b0181990480e\n\n    exportのあたりを参考にさせていただきました。\n\n- http://sahatyalkabov.com/create-a-character-voting-app-using-react-nodejs-mongodb-and-socketio/ の Step4-Step6\n\n    ES6の説明が簡潔で良かったです。Fluxとかは英語読むの辛かったのでWeb+DB naoyaさんの記事を読みました。\n\n- http://qiita.com/M-ISO/items/6c8b97a9447ccfe9a1f6\n\n    stateとpropsについて簡潔にまとまっていて分かりやすかったです\n\n#### テスト編\n\n- 入門React\n\n    テストの章は解説も丁寧で助かった。これをベースに勉強していく.\n\n- http://qiita.com/uryyyyyyy/items/0161aaacff981de918e5\n\n    global.documentのところでハマりました。jsdom使ってやるっぽいです。\n\n    ```\n    import jsdom      from 'jsdom';\n    global.document = jsdom.jsdom(\"\u003c!doctype html\u003e\u003chtml\u003e\u003cbody\u003e\u003c/body\u003e\u003c/html\u003e\");\n    global.window   = document.parentWindow;\n    ```\n\n- http://jaketrent.com/post/testing-react-with-jsdom/\n\n    jsdomのsetupを `dom.js` にまとめようとしたら `ReferenceError: navigator is not defined`\n    って怒られたのが、コレのとおりにしたら治った\n\n- http://foreignkey.jp/archives/763\n\n    JavaScriptのthisの扱いについて分かりやすく解説されていた。\n\n- http://codezine.jp/article/detail/8512?p=7\n\n    まだちゃんと読んでないですが役立ちそう\n\n#### Electron編\n\nhtmlを `index.html` にして、 `index.js` を用意。\n後は `electron public` ってやれば動いてくれる。\n手軽ですごくいい。\n\n- http://qiita.com/nyanchu/items/15d514d9b9f87e5c0a29\n- http://qiita.com/nyanchu/items/1dcd42ba6473f6afa575\n- http://qiita.com/Quramy/items/90d61ff37ca1b95a7f6d\n- http://qiita.com/Quramy/items/a4be32769366cfe55778","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fc-bata%2Fmdnote","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fc-bata%2Fmdnote","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fc-bata%2Fmdnote/lists"}