歌舞伎町発!PakePlusで実現する、超軽量マルチプラットフォームアプリ開発
おいおい、PakePlusってのはよ、一言で言えば「ウェブサイトを瞬時にアプリに変えちまう魔法のツール」ってところだ。ウェブの技術を使って作ったもんが、デスクトップアプリにもスマホアプリにもなっちまうんだから、まるでコントの世界だろ? しかも5MB以下っていう超軽量級で、サクッと作れちまう。RustとTauriをベースにしてるから、軽くて速いってのがミソだぜ。
これがまた、ソフトウェアエンジニアの俺たちにとっては、かなり使えるんだ。
ウェブ技術(HTML、CSS、JavaScript、Vue、Reactなんでも来い!)でアプリが作れるってことは、もうデスクトップアプリのためにC++やJava、スマホアプリのためにSwiftやKotlinをイチから学ぶ必要はないってことだ。ウェブ開発のスキルがあれば、マルチプラットフォーム対応のアプリがサクッと作れる。これって、開発期間の短縮にも繋がるし、新しい技術を覚える手間も省ける。まさに、一石何鳥だろ?
開発者が複数のプラットフォームの技術を習得するってのは、それだけで時間も金もかかる話だ。PakePlusを使えば、一つのコードベースで複数のプラットフォームに対応できるから、人件費や開発ツールのコストも抑えられる。中小企業なんかには特にありがたい話だぜ。
Tauriがベースになってるってことは、ElectronみたいにChromiumを丸ごと同梱するわけじゃないから、アプリのサイズが格段に小さい。起動も速いし、動作もキビキビしてる。ユーザー体験って意味でも、これはデカいポイントだぜ。
PakePlusはRustベースだから、メモリ安全性なんかのセキュリティ面でも優れてる。ウェブ技術ベースだけど、デスクトップアプリとしての安定性やセキュリティも確保できるのは、俺たちエンジニアにとっては嬉しい誤算だ。
さて、実際にどうやって使うのか、歌舞伎町のホストクラブの客引きみたいに、とっつきやすく説明してやるぜ!
PakePlusはRustで動いてるから、まずはRustをインストールしなきゃ始まらねぇ。 コマンドラインでこれを叩けばOKだぜ。
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
インストールが終わったら、ターミナルを再起動するか、source $HOME/.cargo/env を実行してパスを通しておくんだぞ。
Rustが入ったら、あとはPakePlusのCLIツールをインストールするだけだ。簡単だろ?
cargo install pake-plus
これで、PakePlusのコマンドが使えるようになるはずだぜ。
いよいよ本番だ!例えば、俺のブログサイト(架空だけどな!)をアプリにするとしてみよう。
pake-plus "https://my-awesome-blog.com"
たったこれだけ!これだけで、指定したURLのウェブサイトがデスクトップアプリになっちまうんだから、まるで手品だろ? オプションを指定すれば、アプリ名を変えたり、アイコンを変えたりもできるぜ。
pake-plus "https://my-awesome-blog.com" --name "俺の超ブログ" --icon "./path/to/my-icon.png" --width 1200 --height 800
VueやReactなんかのプロジェクトをアプリにする場合は、まずプロジェクトをビルドして、静的なファイル群を生成する必要がある。
例えばVueプロジェクトなら
npm run build
ビルドが終わったら、出力されたdistディレクトリ(Vueの場合)のパスを指定してPakePlusを実行するんだ。
pake-plus "./dist" --name "俺のVueアプリ" --transparent --no-cookie
--transparentで背景を透明にしたり、--no-cookieでCookieを無効にしたり、色々と細かく設定できるんだぜ。
PakePlusの「サンプルコード」ってのは、実はほとんどコマンドラインでの実行例なんだ。だって、元になるウェブサイトやウェブアプリのコードは、お前さんが既に持ってるもんだからな。
pake-plus "https://www.google.com" --name "グーグル" --icon "./icons/google.ico"
これでGoogleがデスクトップアプリになる!
お前さんが作ったローカルのindex.htmlをアプリにすることもできるぜ。
pake-plus "./my_local_site/index.html" --name "俺のローカルサイト" --width 1024 --height 768 --resizable
--resizableをつければ、アプリのウィンドウサイズを自由に変えられるようになる。
Vueプロジェクトのdistフォルダが./my_vue_app/distにあるとする。
pake-plus "./my_vue_app/dist" --name "俺のVue神アプリ" --transparent --fullscreen --menu --tray
--fullscreenで起動時に全画面表示にしたり、--menuでメニューバーを表示したり、--trayでシステムトレイにアイコンを表示させたりもできる。
どうだ? PakePlus、なかなかイケてるだろ? ウェブ技術を活かしてサクッとマルチプラットフォームアプリが作れるってのは、今の時代、かなりの武器になる。俺たちソフトウェアエンジニアにとって、開発の幅を広げ、効率を上げるための強力なツールになるはずだぜ。