kingyosun / gawoo Goto Github PK
View Code? Open in Web Editor NEWGAWOOはそれなりの分散型P2Pミニブログソーシャルアプリのプロジェクトです
GAWOOはそれなりの分散型P2Pミニブログソーシャルアプリのプロジェクトです
位置を記録してページ遷移後に戻れるようにする
できたらやる
他人の投稿をpinningできるようにする
できたらやる
後回し
できたらやる
とりあえず通知設定とか?
SSRを有効にしたのでIndexPostsの状態が保持されているっぽい
自動スクロールするように変更すると良いかも
とりあえず50MB
アラートでボタン経由なら制限かからない旨を書く
ずっと考えてたプロフィールをCeramicにして良いのか迷ってたので書いて整理してみる
Ceramic Networkはざっくり言うと「常時稼働が保証されたサーバー郡による分散ネットワーク」のことで、これによってユーザーは純粋なP2Pで発生するシード無し(100%のファイルを持っているユーザーが存在せずファイルを取得できない)を回避できる
レスポンスも早いし体験的にも良い
しかし、「サーバー郡」が障害点になるし純粋にユーザー間でのP2Pという原則からは外れてしまう
(もっとも、ユーザー同士をマッチングさせるサーバーも別の「サーバー郡による分散システム」に乗せる予定なので究極的なP2Pを実現する見通しは立っていない)
ただ、今のプロダクトは「プロフィール用の分散システム」「純粋なユーザー間の投稿共有システム」「ユーザー同士をマッチングさせる分散システム」の3つがあって非常に複雑になっている
そこで、「プロフィール用の分散システム」でプロフィールが確実に取得できないリスクを妥協した上で「純粋なユーザー間の投稿共有システム」に載せ替えた方が良さそうな気がしてきた
つまり「純粋なユーザー間のファイル共有システム」と「ユーザー同士のマッチング用分散サーバー郡」に分かれるのでスッキリする
ついでに「プロフィール用分散システム」であるCeramicはたしかに優れているがCeramicプロジェクトに集約しすぎていてリスクが高そうというのもある
「ユーザー同士のマッチング用分散サーバー郡」はもっとシンプルな構成だし、代替プロジェクトも存在しているのでいざという時は乗り換え可能なのでリクスは低い
というわけでプロフィール共有システム丸っと入れ替えっぞ
匿名グループを作ってそこに投稿できるようにする
署名不要にする
マイページ→プロフィール編集の順で遷移する
ceramicのdidで署名してフォロー&アンフォローは本人からしか受け取らないようにする
ついでにwakuのObserverの切り替えも行う
こちらのドキュメントを参照: https://developers.idx.xyz/build/installation/
サイドバーの計算方法に合わせる
res || error
になっているのを、
{
res: res,
error: e,toString()
}
に直す
CI的なやつ
ユニットテストはjest
E2Eはgithub actions + Playwrightがよさそう
参考
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.