ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
SAPIX資料から家庭学習計画を作り、毎日のタスクをチェックする個人用アプリ
Translation pending
EducationGitHub @kenyu4OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Repository information has not been collected yet.
No updates detected yet. GitHub releases will appear here.
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗SAPIX 小学5年生の家庭学習計画を、保護者がアップロードした最新の SAPIX 資料だけを根拠に AI(Claude)が作成し、子どもが毎日チェックして消し込める個人用 Web アプリです。
学習計画はコードに固定していません。毎回、資料をアップロード → AI が計画案を作成 → AI 自身が 1 日ずつ検証 → 保護者が確認・修正 → 「この計画で確定」で日付別タスクに反映、という流れです。
1. 最新資料をアップロード (計画作成タブ)
2. AI が資料を解析・計画案を作成 (/api/plan/generate)
3. AI が 1 日ずつ根拠を検証・修正 (/api/plan/verify)
4. 保護者が確認・編集・削除・追加
5. 「この計画で確定」 (既存タスクとの差分を承認)
6. 今日のタスク一覧へ反映 (タスクタブ)
7. 子どもが完了チェック → 即時保存
@anthropic-ai/sdk、既定モデル claude-opus-5-5)
必要なもの: Node.js 20 以上(推奨 22)
npm install
cp .env.example .env.local
.env.local に設定します。ANTHROPIC_API_KEY=sk-ant-...
| 変数 | 説明 |
|---|---|
ANTHROPIC_API_KEY | 必須。未設定のときはデモモード(資料を読まずに操作確認用の計画案を作る)で動きます |
ANTHROPIC_MODEL | 任意。既定は claude-opus-5-5 |
DEMO_MODE | 1 にすると API キーがあってもデモモード |
キーはサーバー側の環境変数としてのみ読み込みます(NEXT_PUBLIC_ を付けないでください)。
npm run dev # 開発サーバー http://localhost:3000
npm run build # 本番ビルド
npm run start # 本番サーバー
npm run lint # ESLint
npm run typecheck # 型チェック
スマホから使う場合は、同じ Wi-Fi 内で http://<PCのIPアドレス>:3000 を開くか、後述のデプロイをしてください。
src/lib/server/prompts.ts のシステムプロンプトに記載しています。(3) 家庭学習タスク、0 件なら 家庭学習タスク)。| データ | 保存先 |
|---|---|
| タスク・完了状況・資料メタデータ・計画案・確定履歴 | ブラウザの localStorage(キー sapix-home-study:v1) |
| 資料の原本(「原本を開く」用) | ブラウザの IndexedDB |
| AI に渡す資料ファイル | Anthropic Files API(file_id をメタデータに保持。資料を削除すると Files API 側も削除) |
src/lib/types.ts。Task は id, date, subject, material, textbookNumber, range, title, detail, category, completed, completedAt, sourceId, sourceIds, evidence, planId, order, createdAt, updatedAt を持ち、sourceId/evidence で根拠資料を追跡します。src/lib/storage.ts の load / save に閉じています。Supabase 等に移行する場合は、tasks・sources・plans をそれぞれテーブル化(evidence は jsonb、または task_evidence テーブル)し、この 2 関数をリモート API 呼び出しに差し替えてください。ANTHROPIC_API_KEY を設定します。注意点:
maxDuration = 300(秒)を設定しています。Vercel のプランによって上限が異なるので、タイムアウトする場合は計画期間を短くしてください。Vercel 以外でも npm run build && npm run start が動く Node.js 環境ならデプロイできます。
src/
app/
page.tsx タスク画面
plan/page.tsx 計画作成画面(保護者用)
api/files/ 資料アップロード・削除(Files API)
api/plan/generate/ 計画案生成
api/plan/verify/ 計画案の検証
api/timetable/ 時間割からクラスごとの授業曜日・科目を読み取り
api/status/ 動作モード(live / demo)
components/ 画面部品
lib/
types.ts データ型
storage.ts 永続化(localStorage)
plan-schema.ts AI 出力スキーマ・API 入出力
plan-rules.ts AI 出力へのアプリ側ルール適用・警告
diff.ts 計画案と登録済みタスクの差分・反映
server/ AI 呼び出し・プロンプト・デモ