Wu-Hsien Yu/ 文章
文章

Kindie - 開發日誌 01

這是 Kindie 的第一篇開發日誌。

Kindie 是一個台灣幼兒園資訊平台,把全台 7,000 多所幼兒園的收費、地圖、裁罰紀錄、家長評論放在同一個地方,讓家長可以並排比較。它在 2026 年 4 月 7 日正式發佈了,歷經了一週的完整資料,包括 - Threads 的貼文洞察、Plausible 的流量報表,以及在 Threads 上實際的家長回饋。

這一篇像是到目前為止的回顧:為什麼做它、怎麼做的、這一週發生了什麼事,以及對於之後的方向。除此之外,也想把當下的一些判斷記下來,讓之後回頭看的時候,知道自己那時候是怎麼想的。

問題

回想那段幫我們的孩子找幼兒園的時間,相較於太太對幼兒園、評價風氣、學區這些資訊都已經相當瞭若指掌,我自己是相對比較模糊的,不知道學區怎麼看、私立學校、準公共學校、公共學校之間的差別,以及每一間的費用等等,我都需要逐一的上網查找,並且筆記再逐一比對。

而除了這些對於幼兒園所的基本知識外,我跟太太更在意的是安全的問題。

我們會不斷在網路上搜尋同一間幼兒園是否曾經有被裁罰過,又或者是否有相關的負面新聞等等。畢竟,目前的法規下,如果有裁罰紀錄且在期限內改善,紀錄就沒有辦法在政府機關再次查看。政府也是想保護幼兒園業者的權利或是觀感,但對於家長而言,曾經發生過的事情雖然平息了,但不代表現在就是沒有問題,或是安全的。

不免還是要抱怨目前的法規,總是讓人感覺是在保護加害者,而不是受害者,但又是題外話了。

我們的流程大概是這樣:開十幾個視窗 — 全國教保資訊網查收費、翻裁罰,Google Maps 看位置、看評論,最後自己開一張試算表,把這些東西一格一格抄進去比較。資料都是公開的,只是散落在不同的地方,而且沒有一個地方讓你「並排」。

我們想要的東西其實很具體:收費明細、位置、裁罰紀錄、評論,放在同一個頁面上,勾選幾所,並排比較。就這樣。

所以花了幾個月的週末,把它做出來。

資料

Kindie 的資料來自教育部全國教保資訊網的公開資料;裁罰紀錄的部分,站在 kiang 長期爬取、整理的公開 repo 上,非常感謝。

全台一共 7,297 所幼兒園。資料本身不難拿,難的都在細節:

臺與台:官方資料裡是「臺北市」,程式裡寫成「台北市」,比對就是失敗 — 而且是無聲的失敗:不會有錯誤訊息,只是查不到、排不對。最後整個專案統一用「臺」,跟資料來源一致。這種問題不會出現在任何教學文件裡,但會在半夜安靜地吃掉你兩個小時。

裁罰資料有結構性的缺口:公開 repo 三年大約只爬了五次,兩次爬取之間被下架的紀錄,就是拿不回來了。所以有些園所查不到裁罰,不代表沒有,只代表爬的當下沒有。這是資料來源的限制,不是 bug,只能誠實標註。

全部顯示、全部註記:裁罰大概是家長最在意、也最敏感的資訊。Kindie 的做法是:紀錄一旦收錄就不刪除;政府網站已下架的,保留但標註狀態;同時依 2023 年上路的規定,自動計算每筆紀錄的公告期限,讓家長盡可能一眼就知道已改善,或是還在公告期間。寧可多一層註記,也不做任何刪改。

選擇

技術上沒什麼懸念,因為是一個資訊的收集、分析,是我自己擅長的部分:

  • Laravel + Livewire — 寫了好久的 PHP,週末的時間想花在產品上,不是花在學新框架上
  • Flux UI + Tailwind CSS — 元件直接用,把調整設計的時間也省下來
  • Laravel Cloud — push 就部署,不用管機器

開發方式主要與 Claude Code 協作:每個改動都是一張 GitHub Issue,寫清楚背景、分析、要動的檔案與完成條件,然後交給它。我負責規格、判斷與決策。

上線

4 月 7 日,在 Threads 發了第一篇文,掛在「媽媽日常」和「幼兒園」兩個主題下。內容就是我們自己的問題描述:

Kindie 在 Threads 上的第一篇貼文

那篇文最後的數字:

  • 8.7 萬次瀏覽,其中 90% 來自首頁動態
  • 2,604 次互動 — 2,138 個讚、264 次轉發、190 則回覆、12 次引用
  • 2,880 次分享
  • 新增追蹤者:48 位

Threads 貼文洞察報告:8.7 萬次瀏覽,90% 來自首頁動態

Threads 互動次數:2,604 次互動、新增 48 位追蹤者

有兩個數字值得停下來看。

第一個是 90%。這個帳號在那之前沒什麼追蹤者,但 8.7 萬次瀏覽裡有九成來自首頁動態 — 也就是演算法主動推給陌生人的。主題頁籤本身只帶來 0.02% 的瀏覽,但我傾向相信那兩個主題標籤幫演算法判斷了「這篇該推給誰」— 推給了正在關注幼兒園話題的家長。

第二個是 48。8.7 萬次瀏覽過後,留下來的追蹤者是 48 位。雖然不是特別多,但還是很驚訝。

流量

Plausible 上,4/7 到 4/11 這五天:

  • 12.2k 個不重複訪客、41.5k 次瀏覽
  • 平均每次造訪看 3.21 頁、停留 1 分 53 秒,跳出率 51%
  • 高峰在 4/8,單日約 4.9k 個訪客;到了 4/11,剩下 500 左右

Plausible 流量總覽:4/7 至 4/11,12.2k 個不重複訪客

來源:Threads 7.9k、Direct 2.9k、Instagram 加起來約 1.3k — 然後是 Google,28。

流量來源分布:Threads 7.9k、Direct 2.9k、Google 28

比較讓人開心的是 — 平均 3.21 頁不是路過的數字,大家真的在點園所、真的在比較,核心功能確實有被大家使用到。因為 比較功能 是我與太太最希望能夠有的工具。

城市分布從台北、台中、高雄一路排下去,全台都有,不是台北同溫層限定,但也可以發現北部的使用量相對比較大。Direct 的 2.9k 裡,我猜有可能是貼文被轉發到 LINE 群組或其他地方後點開的。

訪客城市分布:台北、台中、高雄領先,全台皆有

還有一個很意外的發現:76.6% 的訪客用的瀏覽器是「Mobile App」,也就是 Threads 與 Instagram 的內建瀏覽器,加上 Safari 的 15.2%,超過九成的人是用手機看的,而且可能都是使用 iPhone 的家長。但是這比較讓我意外,因為我以為大家會比較偏愛 Google Chrome

瀏覽器分布:Mobile App(內建瀏覽器)佔 76.6%

但也可以發現,發佈之後,流量在 4/8 到達最高峰後,接著就一路往下了。接著就是每天持平的幾百,以及每天大約有 20~30 個訪客上來查詢。我認為是合理的,畢竟我們自己也是這樣 — 主要在招生前幾個月會開始密集的查找資料,確定了園所後,有大的機會就不會再去做類似的功課。又或者看到某些負面新聞,或是網友的介紹或是評論等,才又會再上來看看這些園所的資料,以及現況。

但這也許就是另外一個功課了:如果不是招生期間,當家長有需要時,Kindie 是否值得他們回來使用、比較與查詢?

發佈之後

發佈那一週裡,陸續有收到家長的回饋,例如:

  • 希望可以增加比較的園所的數量,一開始只允許 3 間,但是他們需要跨區比較
  • 有家長反映查詢完後,回到首頁,又要重新查詢,希望可以保留先前的篩選條件
  • 有家長反映實際的費用,與頁面上不相同
  • 有家長反映其實還有哪幾間園所,但是頁面上查找不到

我們都盡量的更新後再次發佈給家長們使用。包括:

  • 寫了兩篇指南:各縣市的登記時程、幼兒園類型怎麼分
  • 增加了可以比較的園所數量
  • 重新檢視資料,是否有疏漏導致查詢不到園所,或是費用等標記不正確
  • 調整了在手機上的排版

也根據觀察到的資料,我們補上了:

  • 將 7,299 個 URL 做成 sitemap,提交 Google Search Console
  • 園所頁面加上 Schema.org 結構化資料(EducationalOrganization、LocalBusiness)

我們也同時加上了 Google 登入的功能,讓家長可以收藏目標園所,以及提供評論讓其他家長作為參考等。 甚至有家長反映希望也要有托嬰的版本!對我們來說,這是非常棒的回饋,因為表示有實際的需求,大家應該都在期待同樣的問題可以被解決。

現況

三個多月後的現在:資料照常更新,網站安靜地活著。流量落回平穩,搜尋才剛開始累積。接下來要回答的問題,應該是:Kindie 能夠在未來的日子裡,在家長身邊扮演什麼樣的角色

不過回頭看看這一週,最值得留下來的三件事:

  1. 對的內容放進對的族群,比追蹤者數量重要。 一個沒什麼追蹤者的帳號,靠一篇說實話的文,被推到 8.7 萬次瀏覽面前。
  2. 社群流量是借來的。 8.7 萬次瀏覽換到 48 位追蹤者,四天後曲線趨於0。留得下來的只有兩種東西:搜尋引擎裡的 7,000 多個頁面,和真的把網站收進書籤的家長。
  3. 資料要能逼出決策才有用。 76.6% 的 Mobile App 訪客直接排出了改版的優先順序;Google 的 28 決定了接下來三個月力氣往哪裡放。

結語

如果你正好在幫孩子找幼兒園,歡迎用用看:kindie.tw。發現資料有誤,或有任何建議,都歡迎隨時聯絡我們

相關文章

2026.07.13kiho - 開發日誌 012026.01.21自建物流標籤列印系統:從 Loftware 到 GoDex2025.11.20laravel-bcmath-cast:可重複使用的 Eloquent 浮點數 Cast 套件