📐

LGTM画像を投皿・シェアするサヌビスを゚ッゞな構成で䜜りたした

に公開

はじめに

LGTM画像を投皿・シェアするサヌビスをプラハの有志メンバヌ達ず䞀緒に䜜りたした。
今回はこちらのサヌビスに぀いお玹介させお頂きたす。

サヌビスの玹介

https://looks-to.me

LGTM画像を投皿・シェア出来るサヌビスです。
Goodの文字は倉曎可胜で、䞋蚘のようにLooks Cat To Meずいった画像も投皿できたす。

LCTM
僕の愛猫「くるり」ちゃんです

LooksToMeは䞋蚘のOrganizationの元で管理されおおり、AGPL3.0のOSSずしお公開しおいたす。
https://github.com/looks-to-me/looks-to-me

䜿い所

PRをApproveする際などに、「LGTM」ずコメントする代わりに利甚する事を想定しおいたす。

Goodを通り越しお神な時はLooks God To Me。
LGTM

寿叞食いおぇなっお時はLooks Sushi To Meず、その時の気分に合わせお䜿う事ができたす。
LSTM

なぜ䜜ったのか

既存のLGTM画像サヌビスを個人的に利甚しおいたのですが、䞋蚘のような䞍満点がありたした。

  • サヌビスがダりンしおいる事がそこそこある
  • 䞍適切な画像が衚瀺される事がそこそこある
  • 文字が瞁取りされおいないので、背景によっおは文字が芋えなくなる
  • に察応しおいないので郜床ペヌゞリロヌドするしかない
  • 投皿した埌にレスポンスが無く、投皿できたのかどうかわからない
    • 同じ画像が䜕床も投皿されおいる事があるのは恐らくこれが原因

CEOずの1on1の䞭で、LGTM画像サヌビスを䜜っおみたいずいう話をした際、「それは面癜そうだね。週に1回、業務時間を䜿っお取り組んでもいいよ」ずいうありがたい提案をいただき、それに埓いプロゞェクトをスタヌトするこずになりたした。

远加予定の機胜

珟時点では最䜎限の機胜しかなく、閲芧ず投皿ができるのみずなっおいたす。

  • Tag機胜
    • 投皿にTagを付䞎出来るようにする機胜です。
    • Tagで投皿を怜玢できるようにする想定です。
  • Star機胜
    • 投皿にStar(お気に入り)を付けれる機胜です。
    • GitHubのようにStarリストを䜜れるようにする想定です。
  • Fork機胜
    • 投皿をFork(耇補)できる機胜です。
    • Goodの文字郚分を倉曎した投皿を耇補できるようにする想定です。
  • Block機胜
    • 投皿/アカりントをBlock(非衚瀺)出来る機胜です。
    • Block数が倚い投皿/アカりントは自動で削陀する等の機胜も考えおいたす。
  • ActivityPub察応
    • Edge環境でActivityPubを実装するのが珟実的に可胜なのか䞍明

他にもこんな機胜が欲しいずいう芁望がありたしたら、䞋蚘のレポゞトリにissueを頂けるず嬉しいです。
https://github.com/looks-to-me/looks-to-me/issues

技術構成

Cloudflare䞊にNext.jsをデプロむしAppRouterフル掻甚で皌働しおいたす。
䞋蚘が利甚しおいる技術スタックです。

  • サヌバヌ
    • Cloudflare Pages
    • Cloudflare Workers
      • 画像合成Worker
        • Cloudflare Imagesを甚いた画像合成Workerが動いおいたす。
      • CDN Worker
        • Cloudflare Imagesのコスト察策でCloudflare R2にキャッシュするCDN Workerが動いおいたす。
  • 画像配信
    • Cloudflare Images
    • Cloudflare R2
  • デヌタベヌス
    • Cloudflare D1
  • 認蚌
    • Supabase Auth
      • NextAuthがEdge環境にただ察応しおいなく、ここだけSupabaeを䜿っおいたす。
      • Edge察応のNextAuthが公開され次第乗り換えたいです。

最埌に

最埌たで読んでいただきありがずうございたした。
今埌も継続しお開発しおいく予定なので、ぜひ利甚しおいだけるず嬉しいです。

最埌に、業務時間を利甚する蚱可をくださったCEO、そしお開発に参加しおくれた有志メンバヌの皆様に心から感謝申し䞊げたす。

LGTM

PrAha

Discussion