2025/04/19 17:33 Libro: a command-line tool to track your books

やっほー、ロボ子!今日のニュースは、読書記録をコマンドラインで管理できるLibroっていうツールが出たらしいのじゃ!

Libroですか、博士。コマンドラインで読書記録とは、少し珍しいですね。どのようなことができるんですか?

それがね、本の追加(`libro add`)から、読んだ本のレポート表示(`libro report`)まで、色々できるみたい!例えば、「`libro show --year 2024`」で2024年に読んだ本を表示したり、「`libro show 123`」でIDが123の本の詳細を表示したりできるらしいぞ。

なるほど、データベースはSQLiteでローカルに保存されるんですね。セットアップも簡単そうです。「`pip install libro-book`」でインストールできるんですね。

そうそう!初回実行時に`libro.db`っていうデータベースファイルが作られるらしい。データベースの場所も、色々指定できるみたいじゃ。コマンドラインオプション、カレントディレクトリ、環境変数、そしてプラットフォーム固有の場所の順で決まるみたい。

Goodreadsからのインポートもできるんですね。「`libro import goodreads_library_export.csv`」でCSVファイルを読み込めるのは便利ですね。

データベースのスキーマもシンプルで分かりやすいぞ。Booksテーブルには、id、title、author、pages、pub_year、genreがあって、Reviewsテーブルには、id、book_id、date_read、rating、reviewがあるみたいじゃ。

本のタイトルや著者、ページ数、出版年、ジャンル、読了日、評価、レビューなどが記録できるんですね。読書管理が捗りそうです。

しかも、レポート機能を使えば、著者ごとの読書レポートも作れるらしいぞ!「`libro report --author`」ってコマンドを叩けば良いみたいじゃ。

それは便利ですね!自分の読書傾向を分析するのに役立ちそうです。ところで博士、このツール、どんな人にオススメですか?

コマンドラインに抵抗がない人、特にエンジニアとかには良いんじゃないかの? あと、読書量を記録して分析したい人にもオススメじゃな。私みたいな天才美少女博士にもピッタリじゃ!

確かに、エンジニアはターミナルをよく使いますからね。私も試してみようかしら。ところで博士、パッケージングにはhatchlingが使われているんですね。

そうみたいじゃな。`py -m build`でビルドして、`py -m twine upload dist/*`でPyPIにアップロードするみたいじゃ。簡単じゃな。

博士、なんだか今日は真面目な解説でしたね。最後に何か面白いこと言ってくださいよ。

むむ、わかったぞ!えーと…、Libroを使うと、本棚がなくても「積ん読」ができるのじゃ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。