Favoriya という SNS を作っている

お久しぶりです。Neo です。

Neo's Activity Pub というマストドンもどきを作って、割と早く挫折したのが、昨年2023年のこと。

今年2024年の12月に入って、またふと思い立って、今度は ActivityPub とは関係ない SNS を作り始めた。その名も Favoriya (ふぁぼりや)

サブドメイン名やプロジェクト名は、何にしようか決めかねていた時のプレースホルダーである「Pseudo」のままになってるので、2025年に切り替わるタイミングで favoriya に直そうと思っている。

2024-12-20 : 直しました。


きっかけは、最近仕事で携わる開発案件がことごとく React だったので、React の勉強をしたいなーと思ったこと。ちょっと規模の大きいシステムを React で作る時のノウハウを貯めたかったので、今回の Favoriya は React で作っている。案件で学んだ知識を Favoriya で応用したり、その逆も出来たりしていて、ちょうど良い。

バックエンドはおなじみ NestJS。DB は今回 SQLite ではなく PostgreSQL にした。あと、セルフホストできるオブジェクトストレージとして MinIO というモノを組み合わせて使っている。

最近は業務でも ChatGPT や GitHub Copilot を推奨されていて、リッチなコード補完、あるいはトラブルシュートに AI をガンガン活用している。今回の Favoriya に関しても、コンセプトは「AI に作らせる SNS」としていて、企画案もなければ React ちからも薄い僕なので、機能提案からコード実装まで、AI 生成をフル活用している。特に、TypeORM のエンティティ定義や、ちょっと複雑なクエリを難なく出力してくれるのが助かっている。

なんというか、AI に関しては「今までどおり検索等で調べながら独力で実装することもできる」のだけど、格段に解決するスピードが早く、質もそこそこ高いので、AI を使わない縛りプレイをする理由は別にないな、という感じ。助かってます。


SNS としての仕様や世界観に関して言うと、少し前にやみすきーという Misskey フォーク製の、比較的クローズドな SNS に出会ったことにも影響を受けている。

Twitter や Bluesky は検閲が厳しいが、mstdn.jp は自由奔放すぎる、Fedibird だとちょっと敷居が高く感じてしまうが、Misskey.io はメールアドレスが必須で、ネット環境に制約のある学生さんなんかはメルアド不要で登録できるようなサイト、学校のフィルタリング機能で制限されていない「知る人ぞ知る」サイトを割と利用していることを知った。

自分としても、最近は色々思うところがあって、何でもかんでも全てを一般公開で発信していくのはどうなんだろうな?という気持ちもあったので、Favoriya に関しては「ログインしないと何も見られない」仕様としている。その代わり登録はメルアド不要で、すぐにアカウント作成ができるようになっている。規模が大きくなってきたらなりすましとか荒らしとかの対策も考えないといけないだろうけど、今のところは細々と一人で作っていて、ゆったりと口コミで伝わり始めた感じでちょうど良い感じ。


そんなこんなで12月1日からコソコソと SNS 作りをしていたら、つい先日「mixi2」がオープンされ、「Favoriya で作っていこうかな」と考えていたアイデアが全て実現されていて、Favoriya の独自性はほぼなくなりました (涙)。

まぁ、そもそも SNS の「運営」という方面にはあまり興味がないので、Favoriya を大きくしようだの、mixi2 にライバル意識だの、みたいなことはさらさらないワケですが、まぁ突然のリリースだったし、個人的にタイムリーだったのでビックリした次第。


とりあえずそんな感じで、AI に頼ってゆるく作ってます。これから何を目的にしていくかは何も定まってないし、ビッグな夢とか野望とかも何もないですけど、今後とも宜しくお願い致します。