見出し画像

本の選書を受け付けられるサービス 選書箱 を開発中

ペパラボでは、本の選書を受け付けられるサービス 選書箱 を開発中です。

これからは選書というスキルが前にも増して重要になると考えており、誰でも気軽に選書者になれるサービスを作っています。

名前からわかるとおり、質問箱の選書版です笑

認証や拡散はTwitterにべったり、サービスでやらないといけないアクションは極力減らして超お手軽に選書できるようになればいいなと思っています。


僕はサービス開発を始めるにあたって技術選定から始めます。やりたいことを実現する一番スマートな技術はどれか?スケールに見合ったものはどれか?これだけ色々な実現手段があるなかで、あれかこれかと選ぶ時間が結構楽しかったりします。プラモの説明書読んでるときみたいな。はやく開発しろよって話ですが笑

自分の一番手に馴染んだ技術で開発するのが手っ取り早くていいのですが、ユーザーボリュームのある技術は大体経験しているので正直なんでもいいわけです。その中で、今自分が興味のあるものを取り入れて開発するとワクワクしながら開発出来ます。

てなわけで調べたことをシェア↓

前提

サーバーで処理するようなことはないため極力クライアントサイドで完結させる。SPAなWebアプリとして開発する。

フレームワーク

React

Vue.jsでも良かったがContextが出てきて大分Reactの書き味が上がったのでReactを採用した。HooksやFunctional Componentを使ってそのあたりの理解も深めたい。真に大規模なプロジェクト以外、Reduxいらないんじゃね?と思ってきていて、今回はReduxなしのContext onlyでやってみる。

UIライブラリ

React UI Libraryあたりでググって出てきたやつで、必要なコンポーネントがあって見た目気に入ったものを採用  ということでBlueAdminに決定。

サーバーサイド

サーバーサイドで処理するようなことがほぼないのとスケール感からFirebaseを採用。

AWS Amplifyも考えたけど設定まわりのお手軽さはまだまだFirebaseに軍配が上がるなということでFirebaseにした。ただ、もうちょっと規模の大きい開発、将来的にAWSガッツリ使うのが想定されている開発だと使っていきたい。

ホスティング

Firebase利用なのでFirebase Hosting

OGP画像生成処理

選書結果をシェアする時に利用するOGP画像はクライアントサイドで作ることにした。画像の雛形をSVGで作成してそこにテキストを流し込み、画像として保存(Firebase Storage)してシェアする。

IDE

僕らのJetBrains! 僕らのIntelliJ!




この記事が気に入ったら、サポートをしてみませんか?
気軽にクリエイターの支援と、記事のオススメができます!
フリーランスエンジニアやりながらいくつか経営しています↓ 1. 外国人デジタルノマドへのColiving施設 achicochi https://achicochi.life/ 2. Papers & Labo http://papersnlabo.com/