推しアイデア
学生専用なので、同じ学部や学科、学年で関連度に応じて自動的に教科書をピックアップ
学生専用なので、同じ学部や学科、学年で関連度に応じて自動的に教科書をピックアップ
他のサービスでは、授業ごとに教科書を探すのは大変。年度の周期によって変わるから大変。だから、大学専用で作ろう!
学部や学年で検索ができること。自分の関係度によって並び替えされること。
対象構成: HTML / CSS / JavaScript / Node.js / Express / 一時SQLite / Render.com
| 区分 | 技術 | 用途 |
|---|---|---|
| フロントエンド | HTML / CSS / JavaScript | 画面表示、検索、フォーム、API呼び出し |
| APIクライアント | Fetch API | Express REST APIへの同一オリジン通信 |
| スタイリング | CSS | 画面デザイン |
| バックエンド実行環境 | Node.js | サーバーサイドJavaScript/TypeScript実行環境 |
| バックエンドフレームワーク | Express | REST APIの実装 |
| 公開用データベース | Node.js node:sqlite / SQLite :memory: | User / Book / Transaction / Comment / Notificationの一時共有とトランザクション制御 |
| 任意のローカル永続DB | Prisma / MySQL | 明示承諾後のmigration・seed・永続化検証だけに使用 |
| デプロイ | Render.com Free Web Service | frontendとAPIを単一サービスで配信。Persistent Diskは使用しない |
| バージョン管理 | Git / GitHub | ソースコード管理 |
| パッケージ管理 | npm | 依存関係管理 |
| 層 | 役割 | 使用技術 | 主な責務 |
|---|---|---|---|
| プレゼンテーション層 | ユーザーとの入出力 | HTML / CSS / JavaScript | 検索画面、出品フォーム、購入・承諾ボタン、プロフィール、ポイント残高表示 |
| アプリケーション層 | 業務処理・API提供 | Node.js / Express / TypeScript | 認証・認可、出品、検索、購入リクエスト、双方承諾、状態更新 |
| データ層 | デモ実行中だけの共有データ | SQLite :memory: | User / Book / Transaction / Comment / Notificationの制約・検索・原子的更新 |