Open3

フルTypeScriptでノーコードアプリを作っている話(#1 イントロ)

Ryo KageyamaRyo Kageyama

1-1. 動機

これまでに、スクラッチで4回家計簿アプリを作ってきた。

  1. [WEB]フロント:JSP、バック:Java / Spring MVC, PostgreSQL
  2. [WEB]フロント:JavaScript / React、バック:Java / Spring Boot, MyBatis
  3. [WEB]フロント:TypeScript / React, Next.Js、バック:PostgreSQL、GraphQL、Urql
  4. [iOS]フロント:Expo V2、バック:3回目と資産を共有している

改善したいことが浮かび上がるたびに、仕様変更していた。
これは、スクラッチの弱みなんだろう。(というかそういうもの)

過去の開発の要素技術の採択観点は、本業や副業の復習をしたいからなぞっていた程度である。
kintone開発をするようになったということもあるし、
仕様変更めんどくさくて、もうしたくないって思ってきてもいるので
ノーコードのアプリを作るようになった

Ryo KageyamaRyo Kageyama

1-2. やってみての感想

データの構造が抽象的になり、考えることが格段に増える。
スクラッチの時は、だんだん流れ作業になっていくので、だれてきていたが、それがなくなった。

ちゃんと実装しているという気にさせてくれる。

Ryo KageyamaRyo Kageyama

1-3. 要素技術

パッケージ管理

  • WebとiOSの展開を考えている。
  • GraphQLスキーマや、zodスキーマを双方で共有したいので、モノレポを採用する。

https://turbo.build/repo

プロジェクト管理

  • Github と連携するし、無料の範囲でチケット作成、ガント引いたりできるので

https://docs.github.com/ja/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects

主な使用技術

  • TypeScript / React / NextJs / App Router
    • Javaとかそういうのは手間になるので、全部これでやってみる
  • GraphQL / Urql
    • SQL書くのだるい
  • TailWIndCSS / Mantine / Material UI
    • 基本的には、TWCでやる、めんどくさいときにサードパーティ使う

インフラ

  • Vercel ここにデプロイしている
  • hasura on PostgreSQL 無料やからいい

その他

  • Github Copilot 時間短縮、テスト楽
  • zod 型の検査でめっちゃ使う
  • jest テストライブラリ、テストないとリファクタリングしずらい