我原本只是隨手開發平台。

沒什麼特別的——只是典型的流程:
建前端、接後端、處理表單、驗證… 你懂的。

後來我需要驗證功能(幾乎每個應用都會遇到)。
自然而然地,我心想:

「好吧,就裝個函式庫,繼續開發吧。」

但接下來有種不太對勁的感覺。


🤔 起心動念的那一刻

我一再遇到同樣的狀況:

  • 有些函式庫感覺太沉重
  • 有些則是太抽象
  • 有時候我只是想要簡單的功能,結果還是得寫一堆程式碼

於是冒出一個隨機的想法:

「要不我自己做一套驗證系統吧?」

不是因為想跟誰競爭。
也不是有什麼大計畫。

只是出於好奇。


🧪 一切從很小的地方開始

一開始,根本沒想認真做。

只是類似這樣的東西:

const schema = {
  email: { rule: "email", errorMsg: "Invalid email" }
};

Enter fullscreen mode Exit fullscreen mode

再寫一個簡單的函式來驗證資料。

就這樣。

沒有龐大的架構,也沒想太多。


😅 然後它不斷成長…

在我繼續開發平台時,我不斷改進它:

  • 加入更多規則
  • 讓錯誤處理更乾淨
  • 簡化 schema 的寫法
  • 一次又一次調整結構

慢慢地… 它不再只是「小工具」。

它開始感覺像真正的東西。


🚀 我沒想到這部分

某一刻我退一步看,才意識到:

「等等… 這好像變成一套完整的驗證函式庫了。」

老實說,一開始根本不是這樣計畫的。

我只是想在做其他東西的同時,順便解決自己的問題。


🧠 我從中學到的

有幾件事讓我印象深刻:

  • 不一定要從大想法開始
  • 有時候「只為了自己的專案」做出來的東西,反而變得更大
  • 簡單其實比複雜更難做到
  • 而最重要的是… 動手做真的能學到很多

📦 來認識 drea

所以… 這個小實驗現在有了名字:drea

它是:

  • 輕量級
  • 基於規則
  • 使用簡單

沒有複雜的鏈式呼叫。
沒有多餘的抽象。
就是直觀的驗證。


🙌 還在早期階段 — 非常歡迎回饋

我仍在持續改進它,也在思考它的未來方向。

如果你也覺得有些驗證函式庫有時「太過頭了」,
我真的很想聽聽你的想法。

你會想用這樣的工具嗎?
你希望它具備什麼功能?


💭 最後的想法

這不是原本計畫好的。

它一開始只是:

「讓我先快速修好這個小問題…」

see docs at https://drea-docs.netlify.app

結果不知不覺變成:

「我好像寫了一套函式庫。」

這種事還真是有趣。