ObsidianのdailynoteにToDoを追加する 去年のこれくらいの時期にObsidian を始めたのだが、最近になってようやく dailynote を使うようになった。 そして、そこにToDoを記載しているのだが、これを管理するための環境を整えるのがまーまー面倒だったので、ここにまとめて置く。 コミュニティプラグインのインストール 以下コミュニティのプラグインをインストールする必用がある Tasks Dataview Templater Dataviewプラグインの設定 以下の設定をONにする。 Enable inline queries Enable JavaScript queries Enable inline JavaScript queries Templaterプラグインの設定 以下の設定をONにする Trigger Templater on new file creation templateを作る templateディレクトリ を作り、その中に daily というファイルを追加する。これの名前は何でも良い。 中身を以下にする。 # ToDo <%* // 1. Dataview APIの取得(待機処理付き) const dv = app.plugins.plugins.dataview?.api; if (!dv) { tR += "> [!CAUTION] Dataview APIが見つかりません。設定を確認してください。"; return; } // 2. 設定:過去何日まで遡るか const daysToLookBack = 7; let allIncompleteTasks = []; // 3. ループ処理 for (let i = 1; i <= daysToLookBack; i++) { // 自身の日付フォーマットに合わせてここを修正(例: "YYYY-MM-DD") const targetDateStr = tp.date.now("YYYY-MM-DD", -i); const page = dv.page(targetDateStr); ...
LLR完成 Like Live RSSReader が完成した。構想だけはでっち上げていたものの、自分の技術力(と時間)が足りなくて出来なかったが、LLMという強力な武器を手に入れることで、クソザコ開発者でも自分が思い描いていたWebサービスを構築できるようになった。非常にありがたい話です。 始め方 opmlファイルをドラッグ&ドロップで落とすか、 フィード管理 から新たにRSSを追加して使いはじめることができる。 操作方法 PCの場合、キーボード操作でほぼできるようになっているので、まずは「?」キーを押下して欲しい。そこに操作の主な説明が載っている。基本的には、Vimのキーボード操作に準拠していると思っていただければいい。 開発に関して 今回は、 Gemini CLI と Codex CLI の2つを駆使して、開発を行なった。プロンプトに関しては、 document/prompt.md に記載した。もし、新たに何かを作ろうとしてる人の参考になればと思っている。 技術選定に関して サーバに何かデータを残すという事はなるべくしたくなかったので、クライアントサイトでほぼ完結するアプリを作ることを考えた。RSSの総量も2000とか3000フィード読んでいる人は現代ではほぼいないと考えて、 IndexedDB で充分にまかなえると考えて、設計。最初はPCオンリーで動かす事を考えたが、開発中にスマホでもRSSよみてーなーと思って、最後の最後でスマホで読める最低限の機能を取り付けた。 また、ホスティング先として cloudflare を選定。最初は、Next.jsのフレームワークで作成していたが、機能的にはHTML+edge serviceで開発可能だと気がついたので、その点で負荷がある程度増えても無料枠でまかなえるcloudflareが良いなということで、一気に作り変えた。それに伴い、Next.jsはやめてビルドツールを Vite8.0 にした。最新の技術に触れたいなという気持ちもあったが、やっぱりViteはすごい優秀。ビルド速度がえげつない。Next.jsはオールインワンで作れるが、例えば今回作ったようなRSSを読み込むという単機能=マイクロサービスと組み合わせるようなシンプルなサイトならば、Viteに軍配が上がる。 バックエンドの機能に関しては、...