久しぶりに webpack を使ったらあまりの遅さに驚いている...
pretty good な検索が来るらしい
Feedback に書いておこう。とりあえず、bluesky はここまで。
とりあえず検索っぽいのは agent.api.app.bsky.actor.search これしか見つけられなかったけど、どのドキュメントをみればいいんですかね?
とりあえず、最低限のリポジトリ上げときました。
https://github.com/susumuota/bluesky-exp
Node.js をインストールして、以下で TL 取得出来るはず。環境変数は安全じゃないので気をつけてください。
```
export ATP_IDENTIFIER="foo.bsky.social"
export ATP_PASSWORD="password"
git clone https://github.com/susumuota/bluesky-exp
cd bluesky-exp
node -v # I have tested on v18.14.2
npm ci
npm run tl
```
TL 取得はこんな感じで動きました。
```
import process from 'node:process';
import { AtpAgent } from '@atproto/api';
const agent = new AtpAgent({ service: 'https://bsky.social'});
const loginResp = await agent.login({
identifier: process.env['ATP_IDENTIFIER'] ?? '',
password: process.env['ATP_PASSWORD'] ?? '',
});
const tl = await agent.api.app.bsky.feed.getTimeline({});
for (const p of tl.data.feed) {
console.log({
handle: p.post.author.handle,
name: p.post.author.displayName, // @ts-ignore
text: p.post.record.text,
reposts: p.post.repostCount,
likes: p.post.upvoteCount,
});
}
```
bluesky の TL 取得できた。次は検索できるか調べてみる。
Node.js 環境なしで動かせるというのはどうやるのですか?
Schnorr署名についてのこの記事、今までで一番わかりやすかった。
https://blog.visvirial.com/articles/721
> 実は Shor によるアルゴリズムを少し改変することで離散対数問題も高速に解けることが知られています。
量子コンピュータは素因数分解だけじゃなく離散対数問題も解けちゃうのか。
#[0]
Mac があれば XCode の iPhone エミュレータで入れないかな?
React の状態管理を Zustand でやってみた。
`persist` でラップするだけで永続化までやってくれるのはいい感じ。対応していないストレージは `getItem`, `setItem`, `removeItem` を定義してやれば OK。 `chrome.storage` はデフォルトでは対応していなかったけど簡単に定義できた。
https://github.com/susumuota/nostr-keyx/blob/main/src/components/useStore.ts
Zustand の伸び具合が気になるから Zustand にしよう。 Jotai は Recoil と似てるとのこと。
React の状態管理、何を使おうか。Recoil は使ったことあるから Zustand か Jotai にトライしてみようかな。
https://npmtrends.com/jotai-vs-recoil-vs-valtio-vs-zustand
https://zenn.dev/kazukix/articles/react-state-management-libraries
監視されてる!
