れとろクイズの開発環境について
前回、れとろクイズをリリースした記事を書きました。
今回は、れとろクイズの開発環境について書きたいと思います。
これから個人開発を進める人の少しでもお役に立てればと思います。
開発環境について
■フロントエンド:
Vue3(TypeScript) + Amplify
→ 業務ではReactを使っています。Reactはお作法がしっくりこない部分があるので、直感的に書けるVueを選びました。本番デプロイはAmplifyでサクッとやりました。大きい声で言えませんがGPT先輩がサポートしてくれました。
■バックエンド 、DB
Python3 + API Gateway + Serverless Framework
DB: DynamoDB
→低コストでサクッとバックエンドを作りたかった。
一番書くのが楽なPython3を選びました。
DBはLambdaと相性のいいDynamoDBを選びました。ただ、NoSQLはRDBのような色々な機能はないので、大規模のDBには向いていない印象になりました。RDBが恋しくなりますね。
■CSS: 今回CSSフレームワークを使いません。
→ 細かい微調整ができない。仕事ではバックエンドメインなので、CSSが苦手で一番苦労しました。
実装した機能について
■実装したこと
クイズ機能はもちろんのこと、クイズ進捗、問い合わせ画面、サイトコンセプト画面を作りました。ローカルストレージもすこし使ってます。
Google Analyticsも導入しています。フォントもデフォルトのものがちょっと貧相なので、Googleフォントを導入しました。
■実装しなかったこと
ローンチを優先させたかったので、最低限の機能しか作っていません。
画面レイアウトはスマホのみで、PCへは対応していません。SNS機能(いいね、共有)は絶対必須ではなかったので今回は省きました。いいねボタンがつきました。
管理画面は自分しか使わないので、超手抜きで数時間で作りました。
今後の展開
サイト運営について
色々盛り込みたい機能やもっとデザインをちゃんとしたいと気持ちはありました。
ローンチを優先しました。そうじゃないと永遠にリリースできないからです。
クイズのコンテンツ数が少なすぎますので、どんどん増やしたいです。思ったよりクイズを作るのが大変ですが、頑張ります。
バックエンドのLambda+DynamoDBが今後、拡張するのに物足りないので、バックエンドを作り変えたいです。特にDynamoDB。
現在、ScalaのPlayで作っています。Scalaは業務で使っていて、早く慣れたいので使いたいと思いますが、Scalaは他の言語と比べると何倍もめんどくさい(PHPの10倍ぐらい)ので、Scala版は一度形になったら、多分Goなど他の言語でまた作りかえると思います。
あと、PCレイアウトにも対応したいです。
気に入らなかったら、何度でもスクラップアンドビルドできるのが個人開発の良いところだと思います。
未完成なサイトでやること満載で、アクセス数もほぼないですが、どんどん前に進んで行こうとおもいます。
この記事が気に入ったらサポートをしてみませんか?