Works 一覧に戻る

タスク管理アプリ

チーム向けのタスク管理 Web アプリケーション。ドラッグ&ドロップによるカンバンボード、リアルタイム通知、ロールベースのアクセス制御を実装。PostgreSQL と Prisma ORM でデータを管理し、Next.js API Routes でバックエンドを構築しました。

GitHub

技術スタック

ReactNode.jsPostgreSQLPrismaTypeScript

タグ

フルスタックチーム開発SaaS

概要

チームのタスクをカンバン形式で管理する Web アプリケーションです。Jira や Notion のような高機能ツールではなく、シンプルさを重視した設計にしています。

主な機能

技術的なポイント

Prisma によるタイプセーフな DB アクセス

const tasks = await prisma.task.findMany({
  where: { assigneeId: userId, status: 'IN_PROGRESS' },
  include: { labels: true, comments: { take: 3 } },
  orderBy: { priority: 'desc' },
})

Server-Sent Events によるリアルタイム通知

WebSocket の代わりに Server-Sent Events を採用。サーバーからクライアントへの一方向通知に特化しており、実装がシンプルで Vercel のエッジ環境とも相性が良い選択でした。

学んだこと

フルスタック開発で最も時間がかかったのは、フロントエンドとバックエンドの型定義の共有でした。zod でスキーマを定義し、バリデーションと型推論を一元管理する設計が有効でした。