Markdownで作るプレゼンツール「Marp」はこうして生まれた
Markdown形式でプレゼン用のスライドを作りたい……そういったニーズに応えるツール「Marp(まーぷ)」がHacker Newsに取り上げられて話題になった。開発したのは株式会社Speeeに勤めるエンジニアの服部 雄輝氏。Marp誕生の背景から現在に至るまで、インタビュー形式でお届けする。
そもそもMarpを作るきっかけはなんだったのでしょう?
僕自身、人前でプレゼンをする機会はそれほど多くなかったのですが、プレゼン用のスライドを作る時間をなんとか削減できないだろうかという漠然とした思いがありました。会社の中にも同じ要望を持つ人がいたので「それなら作ってみよう!」と思い立ったのがきっかけです。Markdownでスライドを作るというコンセプトのツールには、Mac専用アプリのDecksetなどもあったのですが、Windows環境でも同じように提供したいと考えていました。
Marpの特徴としては、
- クロスプラットフォームで動作し環境に依存せず使えること
- スライドを確認しながら作成できるリアルタイムプレビュー機能
- オフライン環境でも使えるデスクトップアプリ
また、先述のDecksetというMac専用の既存アプリを意識していたのですが、それはクローズドなアプリケーションです。MarpはOSSにすることでいろんな人を巻き込んで作りこんでいきたいと考えました、そのため開発当初からGitHubでソースを公開しています。
いつごろから開発を? どうやって注目されるようになったのでしょうか
今年の2月頃からElectron※を学習したいという意欲がありました。そこで冒頭に紹介したようなスライド作成ツールに対する問題意識を結び付けて、自身のスキルアップのため個人プロジェクトとして開発がスタートしました。当初は自分で使うために開発・メンテナンスしていただけで、アプリケーションとして大々的に公開するような予定はありませんでした。
※: クロスプラットフォームに対応したデスクトップアプリを開発できるフレームワーク
ところが7月13日のことです。Hacker Newsで紹介されたのがきっかけでGitHubのStarが急激に増えました。そこから意識的にツールのプロモーションを考えるようになり、まずはMarpの説明ページ(https://yhatt.github.io/marp/)を作成しました。ちなみに、日本語の説明ページはあえて用意していません。
フィードバックを受けて機能を追加したりバグを修正したり、プルリクエストを受け付けたりと、スキルアップに繋がったと思います。おかげさまで最近は勉強会などで登壇する機会も増えるようになりました。
普段のお仕事についてもお聞かせください
実は普段、Electronはいっさい関係なく(笑)、サーバーサイドエンジニアとしてRuby on Railsで社内システムの開発運用をしています。Marpは完全に個人のプロジェクトで、フロントエンドの勉強をしたいと思ってElectronを触り始めたのがきっかけです。サーバーサイドだけではなくフロントであるデスクトップアプリケーションの開発には多くの発見がありました。(業務向けアプリケーションとしての)Electronの可能性もそうですし、標準のWeb技術を勉強できたことも良かったです。
自分は新卒でSpeeeに入って3年目になります、Speeeは従業員約500名のうちエンジニアが50名ほどですが、月間1万円分の書籍を自由に購入できたり、業務用とは別にサーバー費用の補助があったり、マウスやキーボード、椅子なども好きなモノが選べます。パソコンも2年に1回最新マシンが支給されたりと、エンジニアがとても優遇されている環境ですね。
今後の展望を教えてください
まずはマイルストーンを定め、Marpをどういったツールにしたいか方向性を決める必要があります。Marpでやりたいこと、やりたくないこと、その信念を今後は出していきたいです。今は趣味としてマイペースで続けていますが、チーム開発にも意欲があるので、コミッターを増やしていき、コミュニティ主導で開発を進めていきたいという願いもあります。今後もOSSとしてメンテナンスを続けていきたいと思います。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- アプリケーション開発フレームワーク「Electron 15.0」リリース
- アプリケーション開発フレームワーク「Electron 15.0」リリース
- アプリケーション開発フレームワーク「Electron 2.0」リリース
- GitHub、初めてのコミュニティイベント「GitHub Universe」を開催
- Rustのエコシステムの拡がりを感じるデスクトップアプリのためのツールキットTauriを紹介
- JupyterLabをスタンドアロンで利用できる「JupyterLab Desktop App」をWindows/Mac/Linux向けにリリース
- JupyterLabをスタンドアロンで利用できる「JupyterLab Desktop App」をWindows/Mac/Linux向けにリリース
- アプリケーション開発フレームワーク「Electron 5.0」リリース
- アプリケーション開発フレームワーク「Electron 8.0」リリース
- アプリケーション開発フレームワーク「Electron 12.0」リリース