Sudachiの開発計画(2018年)

Hiroshi Kato
4 min readJan 2, 2018

--

2017年の初め頃から、SudachiというmacOS向けのタイムテーブルエディタを作っています。少し遅れましたが、2017年の開発振り返りと、2018年の開発計画を自分への備忘録として綴ってみたいと思います。

2017年の振り返り

2017年は「初期構築」の1年でした。ElectronやReactの知識が足りず思わぬバグを踏んで時間をとられたり、設計の甘い部分があり何度もリファクタを繰り返したりしましたが、少しずつアプリのコアとなる機能を作りました。

  • Firebaseを使ってユーザ認証機能を追加
  • データストアをローカルファイルからFirestoreに移行
  • エディタのライブラリをDraft.jsからSlateに移行
  • エディタエリア改善(ツールバー・インデント・明日に持ち越し機能)
  • React DnDを使ってドラッグ&ドロップでのタスク移動
  • state管理の大幅リファクタリング
  • アプリの自動アップデート対応
  • Sudachiのアプリロゴ作成
  • 公式ページフォーラムを作成

また、Sudachiはこれまでクローズドβとして社内のメンバーのみに使ってもらっていたのですが、偶然にもはてなブックマークで少なくない数の人の目に触れたり、ユーザの方にDevelopers.IOで記事を書いて頂いたことをきっかけに、社外の人にも使ってもらう機会を得られました。

まだまだ納得のいくクオリティではなかったものの、β版にも関わらず自分の作ったアプリを多くの人に使ってもらえたのは、とても励みになりました。頂いたフィードバックは今後のアプリの改善に活かしたいと思います。

今後の開発計画

2018年は、デスクトップアプリにさらに磨きをかけていくつもりです。特にタスクのリストアップ→スケジュール→実行の流れの中で、まだまだ使いづらい点や、使用時のノイズがあるので、UIのシンプルさを維持しつつ手に馴染む操作ができるように改善を重ねていくつもりです。

エディタ改善

一般的なエディタアプリの基本機能を追加する予定です。

  • テキストリンク
  • テキスト強調(太字・斜体・打ち消し線・ボーダーライン…etc)

ショートカットコマンド

普段自分で使う中で欲しいと思っていた、タイムテーブル上のタスクを移動したり、所要時間を変更するショートカットコマンドを追加予定です。リストアップしたタスクを、コマンドだけでスケジュールできたらいいなと思います。

  • タスク開始時間の移動
  • タスク所要時間の変更
  • 単一タスクの持ち越し

また、徐々にマークダウン記法やショートカットコマンドが増えてくるので、一覧をドロワーで表示できるようにしようと思ってます。

オフライン対応

現在オンライン環境でのみ利用可能ですが、オフラインでもアプリを使えるようにしたいと思ってます。Firestoreが未だβ版ということもありオフライン時の挙動がやや安定してくれないのですが、最優先で追加したい機能でもあるので、その他の方法も視野に入れて対応するつもりです。

テーマ選択

アプリのテーマを選択できるようにしたいと思ってます。数ヶ月前にダークトーンのデザインだけ先行して作ったので、はやく実装したいと思います。(同時にCSSまわりをのコードをリファクタしようかな)

Windows/Linux版の配布

現在Mac版のみ公開していますが、Windows/Linux版のアプリについてもリリースしたいと思ってます。1つのコードベースを再利用できるElectronの強みを活かして、マルチプラットフォーム対応を進めたいところです。

ビルド・リリース改善

細かいところですが、アプリのビルド環境、アップデート版の配布についても、改善予定です。

  • ポップアップで変更点を表示
  • ダウロード時のプログレス表示
  • Javascript・CSSのビルド改善

この他にも、Googleカレンダー連携やモバイルアプリの提供などやりたいことは沢山あるのですが、まずは上記の機能を着実に作っていこうと思います。

また、昨年はバグ報告や改善要望をいただきありがとうございました。今年も引き続きお気軽にフォーラムにissueを立ててもらえると助かります。全てに対応することは難しいのですが、Sudachiの開発に活かさせてもらいます。今後ともよろしくお願いします!

--

--