交換日記 (lab)
交換日記 (lab)的背景圖片

交換日記 (lab)

嘗試性 Side Project。這是一個以「與我交換」為核心的數位日記實驗室。不同於單向閱讀,這裡設有「以文換文」機制:你必須先沉澱心情、記錄下自己的一天,才能「解鎖」閱讀站長當日的日記。沒有按讚與留言,只有純粹的文字交換,試圖在速食社交時代,找回真誠且具深度的對話方式。

Web

交換日記 (Exchange Diary)

一個以「文字」與「交換」為核心的數位互動實驗室。

專案緣起與核心概念

在這個按讚只需一秒、訊息已讀不回的速食社交時代,「Exchange Diary」試圖找回網路初期那種真誠且具深度的交流方式。這不是一個單向輸出的部落格,而是一個基於 「價值交換」 的雙向平台。核心哲學很簡單:「想看見他人的真實,先分享自己的真實。」

功能

交換機制:Write to Unlock

這是本專案最核心的遊戲規則。訪客無法直接閱讀站長(Host)的日記內容,內容預設為「鎖定」狀態。

  • 以文換文:用戶必須先沉澱心情,透過編輯器撰寫並發布自己今日的日記。
  • 即時解鎖:一旦系統確認用戶完成今日日記,站長的日記內容將立即解鎖呈現。
  • 每日重置:這個機制每日刷新,鼓勵用戶培養持續記錄與自我對話的習慣。

沉浸式寫作體驗

為了讓用戶專注於文字本身,介面設計極簡化:

  • 黑夜模式 (Dark Mode):全站採用低對比度的深色系設計,提供如深夜書寫般的靜謐氛圍,降低螢幕光線對思考的干擾。
  • Markdown 支援:整合了輕量級 Markdown 渲染引擎,支援標題、清單、粗體等語法,讓日記排版井然有序。

雙向回饋迴圈

這不只是寫給自己的日記,也是寫給站長的一封信。

  • 歷史紀錄與狀態:用戶可以隨時回顧過去的日記,列表中會清楚標示哪些日記已收到站長的回覆。
  • 查看回饋:當站長閱讀並回覆後,用戶會在介面上看到通知。點擊進入後,左側顯示當初的日記,右側則呈現站長的回饋,形成完整的對話脈絡。

站長主控台

專為管理者打造的高效審閱系統,不對外公開:

  • 用戶管理:即時搜尋與瀏覽所有參與交換日記的讀者。
  • 高效審閱模式:採用 「雙欄對照」 (Split View) 設計。左欄顯示讀者日記,右欄即時撰寫回饋,無需在頁面間跳轉,大幅提升回覆效率。
  • 即時發布:站長亦擁有一套獨立的日記發布系統,內容即時同步至所有已解鎖用戶的終端。

視覺與互動設計

  • 聚光燈登入頁:Landing Page 實作了跟隨滑鼠移動的聚光燈 (Spotlight) 特效,象徵在黑暗中尋找共鳴的微光。
  • 響應式佈局 (RWD):從電腦的大螢幕雙欄閱讀,到手機端的單欄滑動,皆經過細緻的適配調整。

技術架構

本專案採用現代化 Serverless 架構構建,確保高效能與易維護性:

  • Core Framework: Next.js 14 (App Router) - 利用 React Server Components 實現極致的首頁載入速度。
  • Database & Backend: Firebase Firestore - NoSQL 資料庫處理日記與用戶資料的即時存取。
  • Authentication: Firebase Auth - 安全整合 Google 登入機制。
  • State Management: React Hooks (Context API) - 處理全域用戶狀態與權限控管。
  • Styling: CSS Modules (Nested CSS) - 結構化的樣式管理。
  • SEO Optimization: 動態生成 Open Graph Meta Tags,優化社群分享預覽圖 (OG Image)。