Athena Reader — ローカルOCR対応スピードリーディングツール
概要
Athena Readerは、画像やPDF、プレーンテキストからテキストを抽出して高速で読み上げる(視認的に提示する)ためのネイティブデスクトップツールです。クリップボードにあるスクリーンショットを貼り付けるだけでローカルOCRを実行し、抽出したテキストを単語単位に正規化/トークン化して、ユーザーが指定したWPMでORPスタイルの中央寄せ表示を行います。Rustのワークスペース構成で、OCRと読み取りロジックを担うathena-coreとGUIを担うathena-appに分かれており、オフラインでも動作する点が特徴です。(約300字)
リポジトリの統計情報
- スター数: 2
- フォーク数: 0
- ウォッチャー数: 2
- コミット数: 14
- ファイル数: 9
- メインの言語: Rust
主な特徴
- ローカルOCR対応:モデルをキャッシュすればオフラインでOCRを実行可能
- マルチフォーマット対応:.txt、.pdf、画像からテキスト抽出
- ORPスタイルの高速表示:中央寄せワード表示で指定WPMに合わせてストリーム表示
- Rustワークスペース設計:コア処理とGUIを分離して可読性・拡張性を確保
技術的なポイント
Athena ReaderはRustワークスペースとして設計され、機能を明確に分割しています。athena-coreモジュールはOCR処理、抽出テキストの正規化(空白や改行の扱いなど)、トークナイゼーション(単語や表示単位への分割)、および読み取りセッションの管理ロジックを担います。OCRは一度モデルをダウンロード・キャッシュすれば以後はローカルのみで実行できるため、ネットワーク接続がない環境でも利用可能です。athena-appはegui/eframeを用いたネイティブGUIで、ユーザーインタラクション(スクリーンショット貼付け、WPM設定、再生操作)を扱います。ORP(Optimal Recognition Point)スタイルの表示は可視性と視線移動を最小化するための工夫で、単語ごとの中央基準位置の計算や表示タイミング制御が必要です。全体としてRustを採用することで、パフォーマンスと安全性が確保され、ネイティブバイナリとしてクロスプラットフォームでの利用拡張がしやすい構成になっています。(約700字)
プロジェクトの構成
主要なファイルとディレクトリ:
- .github: dir
- .gitignore: file
- CHANGELOG.md: file
- Cargo.lock: file
- Cargo.toml: file
…他 4 ファイル
まとめ
ローカルOCRとORP表示を組み合わせたシンプルで実用的なスピードリーディング実装です。(約50字)
リポジトリ情報:
- 名前: athena-reader
- 説明: A simple speed reading application that supports .txt, .pdf, and image text extraction
- スター数: 2
- 言語: Rust
- URL: https://github.com/0xTriboulet/athena-reader
- オーナー: 0xTriboulet
- アバター: https://avatars.githubusercontent.com/u/22229087?v=4
READMEの抜粋:
Athena Reader
Athena Reader is a native desktop speed-reading tool:
- Paste a screenshot from your clipboard
- Run OCR locally (offline after models are cached)
- Stream the extracted text at a target WPM using an ORP-style centered word display
This repository is a Rust workspace with:
athena-core: OCR + text normalization/tokenization + reading session logicathena-app: egui/eframe GUI application