「ナスカ会計」
「ナスカ販売」
小規模事業者向けのシステムです
- TypeScript 98.8%
- JavaScript 1%
- CSS 0.2%
Phase 1 (CRITICAL Security): - 認証ミドルウェア有効化 (NextAuth auth() ラッパー) - APIルートに認証チェック追加 (IDOR脆弱性解消) - ZodバリデーションをPOSTハンドラに追加 - 環境変数の警告コメント強化 Phase 2 (HIGH Performance): - Prisma スキーマに @@index ディレクティブ追加 - N+1クエリ解消 (accounts-receivable, sales-closing, scan-order) Phase 3 (MEDIUM Code Quality): - withAuth HOC/requireAuth ヘルパー作成 - Prismaクライアント統一 (sales-prisma.ts → prisma.ts) - handleApiError() エラーハンドリング追加 Phase 4 (MEDIUM Testing): - csv.test.ts: インポートパス修正 - scan.test.ts: parseReceiptText 実装追加 - estimate.test.ts: authモック・FK制約対応 - quick-navigator.test.tsx: カテゴリID修正 - components.test.tsx: getAllByText 対応 Phase 5 (MEDIUM Security Hardening): - IPベースレート制限の実装 - セキュリティヘッダー追加 (X-Frame-Options等) - CSVインジェクション対策 Phase 6 (LOW Architecture): - デバッグエンドポイント削除 - MCPサーバーを3モジュールに分割 (server/tools/resources) |
||
|---|---|---|
| .planning/codebase | ||
| apps | ||
| assets | ||
| docs | ||
| packages/nazca-core | ||
| tmp | ||
| .gitignore | ||
| opencode.json | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
ナスカ (Nazca)
ナスカは、日本の小規模事業者・個人事業主・農家向けの統合ビジネス管理システムです。会計と販売の2つの独立したシステムから構成され、日々の業務から確定申告までをシームレスにサポートします。
目的
「弥生シリーズの操作を理解し、CSVで弥生会計へデータを持ち込むことで、ストレスなくアップグレードできる小規模なパッケージ」
ナスカは、弥生会計への移行をスムーズにするための「ステップアップ」システムです。弥生シリーズの操作感に慣れ親しんだUIで日々の記帳を行い、成長に合わせてCSVエクスポートで弥生会計へデータを移行できます。簿記や会計の専門知識がないユーザーでも、確定申告までをシンプルに完結できます。
システム構成
ナスカは2つの独立したWebアプリケーションから構成されるモノレポです:
1. nazca-accounting(ナスカ会計)
個人事業主・農家・小規模事業者(従業員50人未満)向けのWebベース会計システム。
Core Value: 確定申告を簡単に。
主な機能:
- 仕訳入力・勘定科目管理
- 青色申告決算書・収支内訳書・消費税申告書の出力
- 固定資産管理・減価償却計算
- 請求書作成・現金出納帳
- 税務設定(消費税方法・青色申告等)
ディレクトリ: apps/nazca-accounting/
2. nazca-sales(ナスカ販売)
販売管理システム。
主な機能:
- 商品管理(在庫・単価・税区分)
- 顧客管理
- 注文管理(見積・納品・請求ステータス)
- 領収書OCR(tesseract.jsによるスキャン読み取り)
ディレクトリ: apps/nazca-sales/
共通技術スタック
- Framework: Next.js 16.2.9 (App Router) + React 19.2.7
- Language: TypeScript 6.0.3
- Database: Prisma 7.8.0 + SQLite
- Styling: Tailwind CSS 4.3.1 + shadcn/ui
- Forms: React Hook Form 7.79.0 + Zod 4.4.3
- State Management: TanStack Query 5.101.0 + Zustand 5.0.14
- Authentication: NextAuth v5
- Testing: Vitest 4.1.9 + Playwright 1.61.0
- PDF Generation: @react-pdf/renderer 4.5.1
プラットフォーム
- Webアプリケーション(PC・タブレット対応、モバイルはレスポンシブまで)
- オープンソースとして公開(ライセンス未定)
UI/UX 方針
弥生会計等の既存会計ソフトのUIを参考にした操作性を提供し、業界標準化の一環としてユーザーの学習コストを低減します。弥生シリーズの操作感に慣れ親しんだUIで、将来的な弥生会計への移行をスムーズにします。
モノレポ構成
nazca/
├── apps/
│ ├── nazca-accounting/ # 会計システム
│ └── nazca-sales/ # 販売システム
├── packages/ # 共有パッケージ(将来予定)
└── README.md
セットアップ
各アプリは独立して動作します。詳細なセットアップ手順は各アプリのディレクトリを参照してください:
- 会計システム:
apps/nazca-accounting/ - 販売システム:
apps/nazca-sales/
ライセンス
オープンソースとして公開。ライセンスは未定。