ブログ
Perryによるネイティブアプリ開発のニュース、チュートリアル、技術的な深掘り。
tvOS、Linux からの iOS クロスコンパイル、Perry Login
Perry v0.4.24:10 番目のコンパイルターゲットとしての tvOS、ld64.lld 経由で Linux から iOS・macOS へのクロスコンパイル、従量課金制の perry login、Windows UI 刷新、macOS 公証、5 日間で 120 コミット。
真のマルチスレッド、コンパイル時 i18n、watchOS
Perry v0.4.0:コンパイル時の安全性を備えた本物の OS スレッド、30 以上のロケール向けゼロセレモニー国際化システム、9 番目のコンパイルターゲットとしての watchOS、オーディオ・カメラ API、並列コンパイラパイプライン。
Windows へのクロスコンパイル、iOS ゲームループ、100% テストパリティ
1 週間で 103 コミット:lld-link 経由で Linux から Windows へのクロスコンパイル、iOS ゲームループサポート、クラッシュレポート、2 段階 Hub ビルドパイプライン、セルフホスティングコンパイラが 68/68 の決定論的テストパリティを達成。
完全なパイプライン:ドキュメント、配布、WidgetKit
1 週間で 82 コミット:49 ページのドキュメントサイト、App Store と Play Store への自動公開、Homebrew と APT パッケージ、TypeScript からのネイティブ WidgetKit エクステンション、新しいウィジェット、http/https モジュール、セルフホスティング LLVM コンパイラ。
コンパイラからエコシステムへ:React、データベース、クラウドビルド
Perry はコンパイラから完全なエコシステムへと成長しました。perry/ui を中核に、MySQL/PostgreSQL/SQLite 対応の Prisma 互換 ORM、ユニバーサルプッシュ通知、App Store 公開付き分散ビルド、React 互換レイヤー——すべて 1 週間で。
6 つのプラットフォームすべてで完全な機能パリティ
20 以上のネイティブ UI ウィジェット、Canvas ウィジェット、テーブルビュー、システム通知、キーチェーンアクセス、マルチウィンドウサポート、そして macOS、iOS、iPadOS、Android、Linux、Windows での完全な機能パリティ——すべてひとつの TypeScript コードベースから。
プラグインシステムはパフォーマンスへの課税
プラグインアーキテクチャは拡張性と引き換えにパフォーマンスを犠牲にします。もし拡張性がランタイムではなくビルド時に実現できたら?コンパイル時合成なら両方手に入ります——オーバーヘッドゼロ、完全な柔軟性。
Hono、tRPC、Strapi をネイティブバイナリにコンパイル
Perry は 3 つの主要な TypeScript フレームワーク——Hono、tRPC、Strapi——をネイティブ ARM64 実行ファイルにコンパイルできるようになりました。1 秒未満でコンパイルし、2 MB 未満のバイナリを生成し、クラッシュなしで動作します。
Pry の開発:TypeScript によるネイティブ JSON ビューア
Pry の開発ウォークスルー——TypeScript からネイティブ ARM64 バイナリにコンパイルされるネイティブ JSON ビューア。ランタイム不要、Web ビュー不要。
TypeScript からクロスプラットフォームのネイティブ UI を実現
Perry がひとつの TypeScript コードベースを AppKit、UIKit、Android Views、GTK4、Win32 にマッピングし、すべてのプラットフォームで真のネイティブ UI を提供する仕組み。
Perry の紹介
Perry は Rust で書かれたネイティブ TypeScript コンパイラで、TypeScript を直接スタンドアロンの実行ファイルにコンパイルします。ランタイム不要、Electron 不要、妥協なし。