我本来只是随便开发我的平台。

没什么特别的 — 只是典型的流程:
构建前端,连接后端,处理表单、验证… 你懂的。

在某个时刻,我需要验证功能(就像每个应用都需要的)。
于是很自然地,我想:

“好吧,我直接用一个库就行,继续前进。”

但之后感觉有点… 不对劲。


🤔 引发这个想法的思考

我反复遇到同样的问题:

  • 有些库感觉太重
  • 有些又太抽象
  • 有时候我只是需要点简单的东西,结果还是写了大量代码

然后冒出了这个随机的想法:

“如果我自己做一个验证系统呢?”

不是因为我想和谁竞争。
也不是因为我有什么宏大计划。

只是好奇心。


🧪 一切从很小的规模开始

一开始,根本没当回事。

只是类似这样的:

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

Enter fullscreen mode Exit fullscreen mode

然后写了一个简单的函数,用它来验证数据。

仅此而已。

没有庞大的架构。没有过度思考。


😅 然后它不断成长…

随着我继续构建平台,我不断改进它:

  • 添加更多规则
  • 让错误处理更干净
  • 简化 schema 的写法
  • 反复调整结构

渐渐地… 它不再只是“一个小助手”

开始感觉像一件真正的东西。


🚀 我没想到这一部分

在某个时刻,我退一步,发现:

“等等… 这其实正在变成一个完整的验证库。”

老实说,这并不是最初的目标。

我只是在构建其他东西的同时,解决自己的问题。


🧠 我从中学到的

有几件事让我印象深刻:

  • 你不总是需要从一个大想法开始
  • 有时候“只为你的项目而建”会导向更大的东西
  • 简单其实比复杂更难
  • 最重要的是… 动手去做能让你学到很多

📦 认识 drea

所以… 那个小小的实验现在有了名字:drea

它是:

  • 轻量级的
  • 基于规则的
  • 使用简单

没有复杂的链式调用。
没有不必要的抽象。
只是直截了当的验证。


🙌 仍处于早期 — 非常期待反馈

我仍在改进它,并思考它未来的方向。

如果你也觉得验证库有时“太多了”,
我真的很想听听你的想法。

你会使用这样的东西吗?
你希望它具备什么特性?


💭 最后的想法

这不是计划中的。

它开始于:

“让我快速修一下这个小问题……”

文档见 https://drea-docs.netlify.app

而不知不觉变成了:

“我想我造了一个库。”

真是有趣的发生。