ちょうぼっち開発記 第1回 — 個人事業主の記帳を楽にしたい

公開: 2026-05-11
ちょうぼっち開発日記Next.js会計

はじめに

ちょうぼっち(keiri.codese.net)は、個人事業主が記帳・確定申告を行うためのWebアプリです。市販の会計ソフトに比べてシンプルにしぼり、「まず複式簿記で動かす」ことを優先して作りました。

なぜ作ったのか

個人で事業をはじめたとき、会計ソフトの機能の多さに戸惑いました。個人事業主が確定申告に必要な機能は限られているのに、画面が複雑で何をすればいいかわからない。だったら自分で作ろうと思ったのがきっかけです。

技術構成

記帳データはブラウザから Supabase に直接書き込む構成です。認証も Supabase Auth を使っています。

この構成にした理由はコストと運用の手軽さです。個人開発では月額固定費をいかに抑えるかが継続の鍵になります。VercelもSupabaseも無料枠があり、利用者が少ない立ち上げ期は維持費ゼロで運用できます。逆に言えば、無料枠の制約(サーバーレス関数の実行時間が短いなど)に収まるように、重い処理をクライアント側に寄せる設計上の工夫が必要でした。このあたりの試行錯誤は別の記事で詳しく書く予定です。

現在の機能

確定申告に直結する損益計算書・貸借対照表の出力はまだ実装が不十分で、次のフェーズで整えます。

つまずいたこと

複式簿記の「借方・貸方が必ず一致する」という制約をアプリで強制する実装が思ったより手間でした。入力中は合計が合わなくても途中保存できるようにしながら、最終的に不一致のまま確定できないようにするUXの設計は試行錯誤しました。

もうひとつ悩んだのが金額の扱いです。JavaScriptの浮動小数点で金額を計算すると丸め誤差が出ることがあるため、金額はすべて整数(円単位)で持ち、表示時にだけカンマ区切りに整形する方針にしました。会計アプリでは1円のずれも信頼問題に直結するので、地味ですが最初に決めておいてよかった設計判断です。

AIと一緒に作っている

開発はAIコーディング支援を使いながら進めています。勘定科目のマスタデータ作成のような「手で打つと丸一日かかる単純作業」はAIに任せると数分で終わります。一方で、複式簿記の整合性チェックのような仕様の判断が絡む部分は、結局自分が会計の本を読み直して仕様を固めてからでないと、AIも正しいコードを書けませんでした。「仕様を決めるのは人間、手を動かすのはAI」という分担が、今のところ一番うまく回っています。

次にやること

最終的には「記帳 → 確定申告の下書き → 提出」までをひとつの流れで完結させることを目標にしています。

まとめ