Bopomofo Land · Design System

注音樂園 — 設計系統 ㄅㄆㄇ

給旅居海外、聽得懂中文的台灣孩子學注音的網站,所有畫面與遊戲共用的 視覺基調與設計 token。低彩度奶油底、柔和點綴、圓潤大留白、超大符號與觸控區, 動效一律尊重 prefers-reduced-motion。此頁是 styles/tokens.css 的視覺預覽。

brand tag · bopomofo

色彩 · Surfaces & Accents

低飽和奶油底搭配柔和點綴;深色模式為墨綠夜,不用純黑。

主背景
--bopo-bg
#FBF6EC
次背景
--bopo-bg-2
#F4ECDB
卡片內襯
--bopo-panel-2
#FBF4E6
主文字
--bopo-ink
#3B2F2A
森林綠(主色)
--bopo-green
#5BA86B
天空藍
--bopo-sky
#6FB3D6
櫻花粉
--bopo-sakura
#F2A9BE
暖橙
--bopo-orange
#F2A65A
暖黃(星星)
--bopo-sun
#F6CE5B

四聲調色 · Tones

聲調是注音關鍵,且丹麥文沒有聲調,需特別用顏色輔助聽辨。

ˉ 第一聲
高平 · 天空藍
ˊ 第二聲
上揚 · 綠
ˇ 第三聲
先降後升 · 橙
ˋ 第四聲
下降 · 暖珊瑚
˙ 輕聲
短弱 · 淡灰

五隻台灣動物 · Mascot 代表色

保育物種、低彩度可愛風;完整角色設定見 docs/00-foundation.md §8。

台灣黑熊
主嚮導 · 歡迎與總結
石虎
「聽」聲音偵探
台灣野山羊
「寫」筆順登山
櫻花鉤吻鮭
「拼讀」逆流而上
台灣獼猴
「說」跟讀與慶祝

Mascot 待機態 · 五隻動物夥伴

純 inline SVG+CSS,圓潤低彩度可愛風,各帶招牌辨識特徵。待機動效=輕柔漂浮+眨眼,開啟「減少動態」時靜止。歡呼態與示範態見下方各區。

台灣黑熊
主嚮導 · 歡迎與總結
招牌白色 V 形胸斑
石虎
「聽」聲音偵探
額頭白紋 · 耳後白斑
台灣野山羊
「寫」筆順登山
短角 · 小鬍鬚
櫻花鉤吻鮭
「拼讀」逆流而上
身側橢圓斑 · 櫻花
台灣獼猴
「說」跟讀與慶祝
紅臉 · 暖棕毛

Mascot 歡呼態 · 答對慶祝

孩子答對時播放:開心彈跳(壓縮拉伸)+瞇眼笑+金色/櫻花星星迸發。沿用待機態同一隻動物與 token 配色,開啟「減少動態」時靜止、星星定格。

台灣黑熊
主嚮導 · 歡迎與總結
答對:彈跳 + 星星
石虎
「聽」聲音偵探
答對:彈跳 + 星星
台灣野山羊
「寫」筆順登山
答對:彈跳 + 星星
櫻花鉤吻鮭
「拼讀」逆流而上
答對:彈跳 + 星星
台灣獼猴
「說」跟讀與慶祝
答對:彈跳 + 星星

Mascot 示範態 · 溫柔教學示範

介紹新符號時播放:動物溫柔點頭傾身、張口「發音」,並冒出一顆注音泡泡輕輕脈動,示意「跟我念一次」。沿用待機態同一隻動物與 token 配色,眼神專注張開不眨,開啟「減少動態」時靜止。

台灣黑熊
主嚮導 · 歡迎與總結
示範:點頭發音 + 泡泡
石虎
「聽」聲音偵探
示範:點頭發音 + 泡泡
台灣野山羊
「寫」筆順登山
示範:點頭發音 + 泡泡
櫻花鉤吻鮭
「拼讀」逆流而上
示範:點頭發音 + 泡泡
台灣獼猴
「說」跟讀與慶祝
示範:點頭發音 + 泡泡

圖像聯想 · 看(看圖記符號)

「看」能力元件:每個母音用同一隻聲音小精靈示範嘴型,把「已知的聲音」連到「符號的長相」——ㄚ 是嘴巴張大大、ㄧ 是嘴巴扁扁笑咪咪(ㄧ 的一橫就是那條扁嘴)。旁邊的注音符號輕輕脈動提醒「看這個」;開啟「減少動態」時靜止。先從單韻母 與介音 走通流程,與下方「寫」的同兩個符號相互呼應。

單韻母 · 嘴巴張大大
開口母音 · 看嘴型記音
介音 · 嘴巴扁扁笑
前高母音 · 扁嘴就是一橫

語音示範 · 聽(聽我說)

「聽」能力元件:聲音小精靈念出符號的聲音,聲波一圈圈從嘴巴往符號擴散(三圈先後脈動=聲音往外傳),孩子點「聽我說」播放鈕就能反覆聆聽(依基礎文件,發音用預錄音檔、不做自動評分)。與上方「看」、下方「寫」刻意用同兩個符號 ,讓單一學習單元的看+聽+寫三能力完整串起來;開啟「減少動態」時聲波靜止為裝飾線、播放鈕停止脈動。

單韻母 · 聽我念一次
開口母音 · 點播放鈕聆聽
介音 · 聽我念一次
前高母音 · 點播放鈕聆聽

筆順描寫引導 · 寫(描紅)

「寫」能力元件(台灣野山羊主責):在淡色描寫槽內依編號順序逐筆描出,每筆有起筆編號點與方向箭頭,先描紅、再仿寫。動效=依序描寫;開啟「減少動態」時直接顯示已描完的靜態完整字形與編號,仍可當靜態筆順表。先從最易的單韻母 與介音 走通流程。

1 2
單韻母 · 兩筆(橫撇+捺)
起筆 1→2 依序描紅
1
介音 · 一筆(橫)
由左往右一橫

換你說 · 說(跟讀錄音)

「說」能力元件(台灣獼猴主責,活潑開心果):補齊單一學習單元的看+聽+寫+說四能力。獼猴先示範念一次,再邀請孩子按麥克風跟著念,錄下來、聽聽看,最後請家長按個讚。依基礎文件 §5:幼兒語音辨識準確率低,初期不做自動評分,改採「錄音→回放→家長按讚」的低壓力模式(沿用「聽」單元同一個符號 )。下面三張卡示範跟讀流程的三個狀態;開啟「減少動態」時麥克風漣漪/錄音點/愛心脈動皆靜止仍清楚。

換你念念看
換你說
聽完示範 · 按麥克風跟著念
獼猴先念一次 ㄚ
錄音中…
對著麥克風念念看
紅點亮起=正在錄音
家長按個讚
聽聽看 · 按個讚
回放錄音 · 家長肯定努力
不打分數,只鼓勵

聽辨小遊戲 · 聽(聽聲音點符號)

路線圖步驟 5 的「聽辨」最小遊戲核心互動(石虎聽偵探主責):先點「聽我說」播放鈕聽一次聲音,再從 3 個符號中點出正確的那一個(先聽再認、音韻覺識先於符號)。依基礎文件「答錯不懲罰」:答對時正解綠圈打勾+輕彈、其餘溫柔淡出;答錯時被點的符號只是輕輕晃一下,並柔和指向正解邀請再試一次。下面三張卡示範同一題的三個互動狀態;開啟「減少動態」時彈跳/晃動/脈動全部靜止,綠圈與指向箭頭仍清楚可見。

作答中
聽聲音 · 3 選 1 點符號
先點播放鈕聽一次
答對 · 慶祝
正解綠圈打勾+輕彈
其餘溫柔淡出
答錯 · 溫柔提示
輕晃不懲罰 · 指向正解
再試一次

讀選小遊戲 · 讀(看符號點聲音)

路線圖步驟 5 的「讀選」最小遊戲核心互動,是「聽辨」的反向:上方先讀出一個注音符號(題目),再從下方 3 個「嘴型」中點出它的聲音——沿用「看」單元的聲音小精靈嘴型詞彙:張大嘴=ㄚ、扁扁笑嘴=ㄧ、閉緊雙唇=ㄇ(符號→已知的嘴型聲音)。互動回饋與聽辨一致、依基礎文件「答錯不懲罰」:答對時正解嘴型綠圈打勾+輕彈、其餘溫柔淡出;答錯時被點的嘴型只輕輕晃一下,並柔和指向正解邀請再試一次。下面三張卡示範同一題(讀 )的三個互動狀態;開啟「減少動態」時彈跳/晃動/脈動全部靜止,綠圈與指向箭頭仍清楚可見。

作答中
讀符號 · 3 選 1 點嘴型
先讀出上方的 ㄚ
答對 · 慶祝
正解嘴型綠圈打勾+輕彈
其餘溫柔淡出
答錯 · 溫柔提示
輕晃不懲罰 · 指向正解
再試一次

每日 30 分鐘 · 能量果實進度

路線圖步驟 6 的時間預算機制視覺:把當日 30 分鐘畫成藤上一排能量果實(每顆約 5 分鐘),隨學習逐顆被吃掉=時間用掉,正在吃的那一顆輕柔脈動,讓孩子對「快結束了」有心理準備(基礎文件 §7)。吃完即「今天玩夠囉,明天再一起玩!」——以月亮休息收尾,溫柔結束、非懲罰、不做倒數壓力(基礎文件 §6)。畫面文字給家長看(含剩餘分鐘);資料先存本機、後接 Firestore。下面四張卡示範一天的進程;開啟「減少動態」時脈動靜止、仍清楚標示目前在哪一顆。

開始學習
今天還有 30 分鐘 · 六顆都飽飽的
學習中
大約還剩 15 分鐘 · 正在吃第四顆
最後一顆果實
大約還剩 5 分鐘 · 玩完這顆就休息
z z
今天玩夠囉
明天再一起玩! · 溫柔結束、隔日重置

登入 · 選擇孩子檔案(可愛空狀態)

路線圖步驟 7 的入口畫面:家長登入後選一位孩子檔案來玩,進度才能記在那個孩子身上(基礎文件 §10 — 一個家長帳號可帶多個孩子)。介面文字給家長看、頭像與大按鈕給孩子點(觸控區夠大、容忍誤觸)。下面三張卡示範入口的三個畫面——家長登入歡迎、還沒有孩子的可愛空狀態(虛線加號邀請新增第一個小朋友,不是冷冰冰的空白)、以及已有孩子時的選擇檔案(頭像泡泡+名字+學習星星)。資料先存本機、後接 Firebase Auth/Firestore;開啟「減少動態」時揮手/漂浮/脈動全部靜止。

注音樂園 家長登入,陪孩子一起學注音 G 用 Google 登入 用 Email 登入
家長登入
Email/Google 登入 · 進度雲端保存
還沒有小朋友的檔案 + 新增第一個小朋友 取個名字、選一隻動物夥伴就可以開始
還沒有孩子檔案
空狀態=溫柔邀請,不是冷冰冰空白
換誰來玩呢?點一個小朋友 小宇 小恩 新增
選擇孩子檔案
一帳號多個孩子 · 進度各自獨立

拼音工廠 · 拼讀(blending)

注音的終極目標:把學過的聲母+韻母+聲調拼成一個字音。櫻花鉤吻鮭逆流而上,兩塊聲韻磚滑進來拼合、戴上聲調帽,拼出 ㄅ+ㄚ+ˇ=ㄅㄚˇ(把)。以四張卡示範拼讀進程;介面文字給家長看。bopomofo

① 兩塊聲韻磚
聲母 ㄅ 配 韻母 ㄚ
② 滑進來拼合
ㄅ+ㄚ → ㄅㄚ
③ 戴上聲調帽
ㄅㄚ + ˇ → ㄅㄚˇ(第三聲)
④ 拼出來囉
ㄅㄚˇ = 把 · 逆流成功!

關卡完成 · 星星評價(肯定努力)

遊戲化外殼的第一塊:每關完成依完成度給 1–3 顆星(看完成度、不看速度,也沒有計時壓力),已得的星星由左至右依序亮起、輕彈,主夥伴台灣黑熊歡呼。落實基礎文件 §6「點數用來肯定努力,不製造焦慮或競爭」。三張卡示範一顆/兩顆/三顆星三種結果;星數下方文字給家長看。bopomofo

關卡完成 · 一顆星
完成了!下次再多試一次
關卡完成 · 兩顆星
很棒!越來越熟練了
關卡完成 · 三顆星
滿分!今天表現超棒

解鎖新動物 · 歡迎加入隊伍

遊戲化外殼的第二塊:完成學習里程碑可「解鎖」其他台灣動物加入隊伍,提供溫和的收集動機(基礎文件 §6,刻意不用排行榜或抽卡)。三張卡示範一段解鎖流程:①還沒解鎖(神秘剪影+虛線框脈動邀請、星星進度)②解鎖瞬間(光芒迸發、新夥伴躍出歡呼)③加入隊伍(緞帶歡迎、主夥伴台灣黑熊同框迎接)。以石虎為解鎖範例。bopomofo

?
還沒解鎖 · 神秘新夥伴
再得 1 顆星,就能邀請新朋友
解鎖瞬間 · 登登!
石虎跳出來,加入你的注音小隊
歡迎石虎加入!
加入隊伍 · 歡迎石虎
完成里程碑解鎖新動物(收集動機)

成就貼紙簿 · 收集徽章

遊戲化外殼的第三塊:把學習成就畫成一頁頁可收集的圓形徽章貼紙(符號達人、初次完成、連續學習、動物好朋友、拼讀高手…),提供溫和的收集動機與回顧成長(基礎文件 §6,刻意不用排行榜或抽卡)。已得的貼紙滿色、輕彈;還沒得到的是虛線空槽+問號,邀請繼續努力。前兩張卡示範同一本貼紙簿從「才剛開始」到「收集中」的進程,第三張示範剛得到一枚新貼紙的慶祝瞬間。bopomofo

? ? ? ?
貼紙簿 · 才剛開始
收集了 2 / 6 枚徽章
? ?
貼紙簿 · 收集中
收集了 4 / 6 枚徽章
新徽章 GET!
得到新徽章!
拼讀高手 — 解鎖一枚新貼紙

連續天數 · 動物的家越來越熱鬧

遊戲化外殼的第四塊:把連續學習天數(streak)畫成「動物的家越來越熱鬧」而非冷冰冰的數字(基礎文件 §6,強調堅持而非競爭,刻意不做孩子間排行榜)。三張卡示範同一個家隨連續天數成長:①第 1 天才剛搬進來(主夥伴黑熊獨自在家、小樹苗剛冒芽)②連續 3 天(石虎來作客、樹長大、掛起小燈籠與花)③連續 7 天(獼猴也加入、彩旗氣球滿屋、花開、陽光普照、星火慶祝)。底部小葉子路徑溫柔標示走過的天數。bopomofo

連續 1 天
第 1 天 · 才剛搬進來
黑熊獨自在家、小樹苗剛冒芽
連續 3 天
連續 3 天 · 越來越熱鬧
石虎來作客、掛起燈籠與花
連續 7 天 🎉
連續 7 天 · 滿屋慶祝
獼猴也加入、彩旗氣球花開滿屋

給家長看的文字以「太棒了,你們已經一起學了 N 天」這種肯定堅持的口吻呈現,而非和別的孩子比較;中斷 streak 也不懲罰,只溫柔邀請「明天再回家看看大家」。

家長園地 · 共學建議(家長模式)

路線圖步驟 10:給家長的「家長模式」三張卡。研究(AAP 2024)顯示幼兒學習的關鍵不是時長而是內容品質與家長共學,因此每天 30 分鐘以溫柔結束+家長共學收尾,而非硬性中斷(基礎文件 §6–§7)。三張卡:①今日共學回顧(以肯定口吻告訴家長孩子今天玩了什麼、提醒今天到這裡就好)②今晚一起玩的小建議(生活中可一起做的共學活動)③進度總覽(已學會/學習中/還沒開始,並強調和昨天的自己比、不和別人比,刻意不做孩子間排行榜)。全程文字導向給家長看,開啟「減少動態」時學習中符號的脈動靜止。bopomofo

今天小宇學了什麼 認識了 ㄚ、ㄧ 兩個符號 拼出第一個字「把」 專心玩了 25 分鐘 今天到這裡就好,明天再一起玩 ✨
今日共學回顧
肯定口吻 · 溫柔結束不催促
今晚可以這樣一起玩 1 在家裡找找看 ㄚ 的聲音 媽媽、ㄚ公、ㄚ姨,到處都有! 2 睡前一起念一本中文繪本 請孩子指出認得的符號 3 便利貼小遊戲 把今天的字貼在冰箱上
今晚一起玩的小建議
生活中的共學 · 不必再開螢幕
學注音的旅程 已學會 3 個 正在學 · 還有好多可以一起探索 和昨天的自己比,不和別人比 💛
進度總覽
和昨天的自己比 · 不做排行榜

家長模式是給大人看的後台:每天孩子玩完後,家長能看見今天學了什麼、拿到幾個可在生活中延伸的共學點子,並看到整體進度——全部以「肯定堅持、和昨天的自己比」為基調,呼應基礎文件 §6–§7「30 分鐘溫柔結束+家長共學、不製造時長與競爭壓力」。後續可接 Firestore 把每個孩子的真實學習紀錄帶進這三張卡。

完整學習單元 · 一個符號的旅程(capstone)

把前面各自獨立的元件串成一個 app 畫面:頂端是孩子頭像(步驟 7)+能量果實時間預算(步驟 6),其下是看/聽/說/寫/玩五步進度路徑(步驟 4–5),中央是當前活動,完成時給星星評價(步驟 9)。三張卡示範同一個符號 的完整旅程——①今天玩這個(單元開始)②進行中(正在「看」這一步)③學會了(三顆星+黑熊歡呼,並溫柔提示今天到這裡就好)。全程沿用 lg 頭像、ef 果實、look 聲音小精靈嘴型、rw 星星與黑熊歡呼,零新增繪製;開啟「減少動態」時當前步驟與符號的脈動皆靜止。bopomofo

小宇 今天認識新符號 開始囉!
今天玩這個 · 單元開始
頭像+能量果實+五步路徑+符號
小宇 看嘴型,記住 ㄚ 的長相 下一步 →
進行中 · 正在「看」這一步
活動嵌在進度外殼裡,時間悄悄前進
小宇 ㄚ 學會了! 今天到這裡就好,明天再玩 ㄧ ✨
學會了 · 單元完成
三顆星肯定努力 · 溫柔結束不催促

這是把路線圖步驟 4–9 的元件組進同一個畫面的 capstone:孩子看到的是一致的 app 外殼(頭像、能量果實、五步路徑),中間替換成當前活動(這裡示範「看」,其餘聽/說/寫/玩同理替換),完成後以星星與黑熊歡呼肯定努力、並溫柔提示今天到這裡就好(§6–§7)。後續整合:用 Firebase Auth 帶出真實孩子檔案、用 Firestore 記錄每個符號的完成度與當日已用時間,驅動果實消耗、步驟點亮與星數。

注音冒險地圖 · 學習旅程

把整段學習畫成一條蜿蜒上山的步道,每個站就是一個注音符號。已學會的站綠色亮起並顯示符號、目前所在的站橙色脈動並停著孩子的頭像(你在這裡)、還沒走到的站虛線淡色+小鎖(但淡淡預告下一個符號是什麼)。這是 capstone(單一符號的旅程)之上的 macro 地圖,讓孩子看到自己走了多遠而不是和別人比名次(基礎文件 §6 強調堅持非競爭)。三張卡示範旅程推進——①出發囉(站在第 1 站 ㄅ)②走到第 4 站(前 3 站已學會、ㄈ 進行中)③登上第一座山頂(六站全亮、黑熊在山頂歡呼)。步道、頭像、星星與黑熊歡呼皆重用既有詞彙、零新增繪製;開啟「減少動態」時目前站停止脈動仍清楚。bopomofo

出發囉 · 第 1 站
整段旅程的 macro 地圖 · 你在這裡
已經學會 3 個符號,走得真好!
走到第 4 站 · 旅途中
已學會綠色亮起 · 目前站脈動
登上第一座山頂!走了好遠 ✨
登上第一座山頂 · 階段達成
看見「走了多遠」· 不和別人比名次

冒險地圖是遊戲化外殼的 macro 視圖:孩子在地圖上看到自己走過的站(已學會的符號)、目前站(正在學的符號)、與前方還鎖著的站,點目前站就進入 capstone 的單一符號旅程。把進度畫成蜿蜒上山的步道而非進度條,配合山頂達成的階段慶祝,落實基礎文件 §6 「強調堅持而非競爭」——沒有名次、沒有和別人比,只有「我走了多遠」。後續整合:用 Firestore 每個符號的完成度驅動站的點亮、目前站位置與已走步道長度。

聲調山坡 · 聽聲調(四聲調聽辨)

基礎文件 §4 特別指出:對聽得懂中文卻講丹麥文的海外孩子來說,最難的不是符號,而是聲調聽辨(丹麥文沒有聲調)。這組元件把四個聲調畫成台灣野山羊走的山坡——一聲走平頂(高而平)、二聲往上爬(由低升高)、三聲先下谷再爬上來(先降後升)、四聲一路下坡(由高滑低),用山羊「往哪邊走」把抽象的音高曲線變成看得見、會動的畫面。範例用同一個音 ㄅㄚ 的四聲(八 ㄅㄚ/拔 ㄅㄚˊ/把 ㄅㄚˇ/爸 ㄅㄚˋ,其中「把」與拼讀卡一致),都是孩子熟悉的字。三張卡示範①認識四聲調(四道山坡並排)②聽聲調·答對(聽一個聲音→點對應的山坡,正解綠圈打勾+山羊登頂歡呼)③答錯·溫柔提示(點錯只輕輕晃、不懲罰,柔和指向正解邀請再聽一次)。聲波、播放鈕、彈跳、晃動、指向與星火全部重用既有動效,零新增動畫。bopomofo

野山羊走山坡,認出四種聲調 一聲 ㄅㄚ 「八」高高的平地 二聲 ㄅㄚˊ 「拔」往上爬坡 三聲 ㄅㄚˇ 「把」下谷再爬上 四聲 ㄅㄚˋ 「爸」滑下坡
認識四聲調 · 四道山坡
把音高曲線畫成野山羊走的坡
聽聽看,這是哪個聲調? 一聲 三聲 四聲 二聲
聽聲調 · 答對
聽聲音 · 點對應的山坡
山羊爬到坡頂歡呼
再聽一次,是往上爬的坡喔 一聲 三聲 二聲 四聲
答錯 · 溫柔提示
點錯只輕晃 · 不懲罰可重試
柔和指向正解、邀請再聽

這組元件補上前面遊戲一直缺的聲調維度:先前的聽辨/讀選練的是「哪個符號」,而對雙語孩子真正的難點是聲調。把四聲畫成野山羊走的山坡(一聲平頂、二聲上坡、三聲下谷再上、四聲下坡)讓孩子用「往哪邊走」記住音高走向,比抽象的調號更直覺,也讓五隻動物裡擅長爬山的野山羊首次在遊戲中當主角。答錯沿用既有「只輕晃、不懲罰、柔和指向正解」範式(基礎文件 §4)。後續整合:用真實音檔播放題目聲音、Firestore 記錄各聲調的聽辨正確率,並可擴充到更多音節(如 ㄇㄚ 媽麻馬罵)。

字級 · Type scale

符號超大、文字其次;介面文字給家長看,互動給孩子用。

--fs-symbol
--fs-h1 / 40注音樂園
--fs-h2 / 28今天學什麼
--fs-h3 / 20聽聽看,這是哪個音?
--fs-body / 18點一下動物,牠會念給你聽。
--fs-small / 14家長提示:今天練了 ㄚ ㄛ ㄜ。

圓角 · 觸控 · 陰影

圓潤手繪感;互動元件最小觸控區 64px,容忍幼兒誤觸。

小圓角
--r-sm · 12px
中圓角
--r-md · 18px
大圓角
--r-lg · 28px
藥丸
--r-pill · 999px
柔和陰影
--shadow-2
最小觸控
--tap-min · 64px

動效時值 · Motion

輕柔漂浮、彈跳、搖擺、脈動;開啟系統「減少動態」時全部自動靜止。

漂浮 float
--t-float · 4s
彈跳 pop
--t-slow · 600ms
搖擺 sway
3s · gentle
脈動 pulse
1.6s · gentle