絵文字を選んで、クリップボードにコピーするアプリを書いた

TL:DR

  • Emoji-cheat-sheet.comの絵文字データで
  • Emoji-cheat-sheet.comの機能 クリックしたらクリップボードにコピーが
  • windows / mac / linuxで
  • オフラインで使える

簡単なアプリを作りました。

emoji-app-5

https://github.com/lyrictenor/nwjs-emoji-app

インストール

Download Latest Release

NW.jsなのでwindows/mac/linuxで動く。

なぜ作ったか?

  • 絵文字のクリップボードへのコピーを簡単に使いたい
  • 各サービスに対してわりと中立なのがほしい
  • Emoji-cheat-sheetベースのものがいくつもあるが、だいたい更新されない
    • Emoji-cheat-sheetのリポジトリのhtmlをparseするスクリプトを書いた
    • ので継続しうる
  • 最近使った履歴から選びたい

技術トピック

react, redux, es2015, es7, babel, webpack, nw.js を使いたかったので使った。
nwjsからtray(mac標準だと右上の小さいアイコン群)やclipboardつかうのもやってみた。

今までビルドスクリプトなどbash前提で書いていたのを、windowsでも動くように気を使った。npm run-scriptにbash/cmdどちらでも使えるものを並べる。rimrafとかmkdirpとかcpxとか。nwjsアプリをbuildして、nw-builderで固めて、それをzipして、みたいなきびしいところはjsで書いた。

アプリのうち、切り出したモジュールはテストできるけど、アプリ側はテストの書き方すらわからない。
切り出したモジュールはnpmパッケージにしちゃえるから、同時にテストもなくなっていく。

副産物

  • Awesome Node.js CLI (cross platform)
    • 知見
  • @sanemat/generator-nm
    • generator-nmをforkして@sanemat/generator-nm とscoped moduleにした。
    • ぼくのかんがえたさいきょうのes5 moduleジェネレーター
    • appveyorを使ってwindows環境もciする
    • 開発中のyoのgeneratorのディレクトリの一部にyo実行できる仕組みもイケてる
    • yomania参考にしました
    • 汎用性加えれば使えるコマンドが出来そう
    • yoのgeneratorは結局みんな使い捨てでメンテ継続不能なので今更感しかない
  • is-travis-ci-build-for-tag
  • is-travis-ci-build
  • awesome-redux
    • awseme-reduxのexampleに載せてもらった。

一人なのにぽこぽこgithub organization分けてるのは、nwjsをgithub releaseにpushしたり、travis-ciからgithubにpushしたりしたい時に自分のwrite権限のtokenガンガン出すのいやだからですね。

サービス連携ならまだともかく、というかんじ。

まとめ

チュートリアル プラスアルファぐらい。
あとreduxのサンプルはいろいろ見た結果、本体付属のredux/example のcounterとtodoがわかりやすい。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中