メインコンテンツへスキップ
YK
経歴
スキル
プロジェクト
研究・発表
ブログ
GitHub
読み込み中...
ホーム
プロジェクト
タスクカレンダーツール
Web · 完了
タスクカレンダーツール
タスク管理とカレンダー表示を組み合わせたSPA。ドラッグ&ドロップでタスクを移動でき、週間カレンダービューでタスクの時間管理を視覚化
期間
2025年7月 – 2025年7月
分野
Web
所属
趣味(個人・チーム)
状態
完了
React
TypeScript
Vite
Vitest
概要
アーキテクチャ
技術的挑戦
関連プロジェクト
概要
React + TypeScript + Viteで構築したタスク管理とカレンダー表示を組み合わせたSPAを開発しています。
週間カレンダービューでタスクを時間軸に沿って表示し、@dnd-kitを使用してドラッグ&ドロップでタスクを移動できる機能を実装しています。
Zustandを使用してタスク、カテゴリ、モーダル状態を管理し、Radix UIを使用してアクセシブルなコンテキストメニューを実装しています。
date-fnsを使用して日付操作を行い、Tailwind CSSでモダンなUIを構築しています。
Vitestを使用してテストを行っています。
アーキテクチャ
図を拡大して見る
機能モジュール
calendar / task-list / task-edit など
状態管理
Zustand
ドラッグ&ドロップ
@dnd-kit
コンテキストメニュー
Radix UI
図を開く
Vite + React + TypeScriptでSPAとして構築しています。
機能別にディレクトリを分割し、calendar、task-edit、task-drag-drop、task-listなどの機能モジュールに分離しています。
Zustandを使用してタスク、カテゴリ、モーダル、ナビゲーション、レイアウトの状態を管理し、各機能モジュールから必要な状態を参照します。
@dnd-kitを使用してドラッグ&ドロップ機能を実装し、タスクリストからカレンダーへの移動や、カレンダー内での日付・時間の変更を可能にしています。
Radix UIを使用してコンテキストメニューを実装し、タスクやカテゴリの編集・削除機能を提供しています。
技術的挑戦
課題
週間カレンダービューでのタスクの時間軸表示とレイアウト計算
解決
date-fnsを使用して日付操作を行い、タスクの開始時間と継続時間から位置とサイズを計算
課題
@dnd-kitを使用したドラッグ&ドロップ機能の実装
解決
タスクリストからカレンダーへの移動や、カレンダー内での日付・時間の変更を実現
課題
Zustandを使用した状態管理の設計
解決
タスク、カテゴリ、モーダル、ナビゲーション、レイアウトの状態を適切に分離し、各機能モジュールから参照
課題
Radix UIを使用したアクセシブルなコンテキストメニューの実装
解決
キーボード操作やスクリーンリーダーに対応したUIコンポーネントの構築
同じ技術を使ったプロジェクト
定期購入リスト
2026 · Web · React · TypeScript
空港ラウンジマップ
2026 · Web · TypeScript · Vite
ドーパミンガチャ
2026 · Web · React · TypeScript
前のプロジェクト
ブラウザ拡張型AIダッシュボード
次のプロジェクト
ICSS/SPT 2025 タイムテーブルビューア