気づいたらRustだらけ

Share

Protonのブログを見ていたら、「Proton AuthenticatorをRustで作ったよ」なんて記事があったのでびっくり。

How Rust powers Proton Authenticator | Proton
To build a secure 2FA app for all major devices, Proton turned to Rust. Carlos Quintana explains why we chose Rust and why we’ll likely use it more in the future.

最近はRustがいろいろな場所で使われているのを見るね。

最近Pythonを使う機会があったのだけれど、uvっていうパッケージマネージャもRustで作られてたわ。

uv
uv is an extremely fast Python package and project manager, written in Rust.

しかも、動作が超速いし、なんかめっちゃ使いやすくて、「難しいことわかんないけどスゲー」ってなった。

Web系でRustの話題はよく見るよね。

Volta - The Hassle-Free JavaScript Tool Manager
Volta: Start your engines.
Rust-based platform for the Web
Turbopack | Next.js 日本語ドキュメント
Turbopackは、RustでJavaScriptとTypeScript向けに最適化された増分バンドラーで、Next.jsに組み込まれています。
Biome
フォーマット、リントなどが一瞬で完了します!
Tauri 2.0
The cross-platform app building toolkit

CLI系のツールなんか、ほんとうに最高ですよね~。

Rust で実装された OSS の CLI ツールたちを見てみよう - dotTrail
Rust は CLI ツールの実装というユースケースでも使用されるプログラミング言語の 1 つです。cat の代替コマンドである bat や grep の代替コマンドで高速な ripgrep など、Rust で実装された OSS の CLI ツールたちを見てみましょう!

イケイケなターミナル環境とか一時期こだわってました。

The Agentic Development Environment
Warp is an AI agent platform that lets you run multiple agents in parallel to complete any development task.
Alacritty - A cross-platform, OpenGL terminal emulator
Alacritty is a modern terminal emulator that comes with sensible defaults, but allows for extensive configuration. By integrating with other applications, rather than reimplementing their functionality, it manages to provide a flexible set of features with high performance.
Starship: Cross-Shell Prompt
Starship is the minimal, blazing fast, and extremely customizable prompt for any shell! Shows the information you need, while staying sleek and minimal. Quick installation available for Bash, Fish, ZSH, Ion, Tcsh, Elvish, Nu, Xonsh, Cmd, and Powershell.

最近はJavaにはまってるんだけれど、Rust、いつか極めたいなあ。

Read more

青空文庫のParser

青空文庫のParser

青空文庫のParserを作ってます。 GitHub - P4suta/aozora: Pure-functional Rust parser for 青空文庫記法 (Aozora Bunko notation): ルビ, 傍点, 縦中横, 外字, 返り点, indent containers, page breaks.Pure-functional Rust parser for 青空文庫記法 (Aozora Bunko notation): ルビ, 傍点, 縦中横, 外字, 返り点, indent containers, page breaks. - P4suta/aozoraGitHubP4suta Rustで作ってますが、配布物はcargoのほかにnpm/pypiでも入手できます Documentation * Playground — try it in

By Sakashita Yasunobu

イケイケなWinスクショアプリを作りました

パソコンのスクショってなんというか、地味というか、撮ってそのままだと何とものっぺりしていますよね。 特にWindowsだとMacっぽい丸っこい感じとかもなく、無骨だなあと。 ということで、それっぽくおしゃれな背景や角丸を付けておしゃれに撮影をしてくれるスクショアプリを作りました。 GitHubで公開しています。 GitHub - P4suta/Snaply: Snaply — a modern, clean-architecture Windows screenshot tool (WinUI 3 / .NET 10)Snaply — a modern, clean-architecture Windows screenshot tool (WinUI 3 / .NET 10) - P4suta/SnaplyGitHubP4suta ウィンドウ・領域選択・スクリーンのキャプチャができます。 タッチスクリーンなどにも対応しているはずです。 撮影をすると、クリップボードにコピーされ、フォルダーへの保存もされます。

By Sakashita Yasunobu
Find My Files

Find My Files

Windowsにおける爆速ファイル検索アプリの定番といえば、Everythingです。 voidtoolswebhost2 その高速さの理由は、NTFSの仕組みをうまく活用していることにあります。Windowsで一般的に使われているNTFSには、ファイル情報を管理するマスターファイルテーブル(MFT)と、ファイルシステムの変更履歴を記録するUSN Journalがあります。Everythingはこれらを利用することで、初回に高速にファイル一覧を構築し、その後はUSN Journalを監視してリアルタイムにインデックスを更新しています。そのため、数百万ファイル規模の環境でも非常に高速な検索を実現しています。 もちろん、単純にファイル名やパスを保持するだけでは、大量のメモリを消費してしまいます。また、数百万件ものファイルから一瞬で目的のものを見つけるためには、メモリ効率の高いデータ構造や高速な検索アルゴリズムなど、さまざまな工夫が必要になります。 このように、Everythingは見た目こそシンプルですが、中身はかなり高度なことをやっているソフトウェアです。 なお、Everyth

By Sakashita Yasunobu