一句话简介:这是一款开源、免费、支持多种数据库的 Web 端可视化管理工具。
各位开发者朋友们,大家好!
我是小一。今天,我想向大家正式介绍一个我在学校期间做的项目——琅嬛 (Langhuan)。
这是我从最开始学习前端时候就开始写的一个项目,加上现在“AI 赋能”,通过不断让 AI 重构,终于成了还算能维护的项目。
✨ 核心功能:全能的数据库“瑞士军刀”
目前,琅嬛 已经实现了对主流数据库的深度适配,力求在 Web 端提供媲美原生应用的体验。
1. MySQL:不仅仅是增删改查
- 数据管理:支持高性能的分页浏览、过滤查询。
- 高级对象:全面支持 视图 (View)、触发器 (Trigger)、存储过程/函数 (Function) 以及 事件 (Event) 的可视化管理。
- 分区表支持:支持查看与管理物理分区,这在处理海量数据时非常关键。
- DDL 导出:一键生成结构化的建表语句。
2. Redis:像操作文件夹一样管理缓存
- 树形结构视图:自动解析 Key 的层级关系,告别混乱的列表。
- 全类型支持:String, List, Hash, Set, ZSet, Stream 均有对应的可视化编辑界面。
- TTL 管理:直观查看和修改过期时间。
3. MongoDB:拥抱非关系型的灵活性
实现中
4. PostgreSQL:关系型数据库的网红产品
规划中
5. 原生 Shell:小黑框是最终解决方案
目前支持了 MySQL、Redis 和 MongoDB 的原生 Shell 交互。不同于传统的 GUI 填表,它为你提供了一个沉浸式的 Web 终端:
- 原汁原味:支持 MongoDB Shell 原生语法(如
db.collection.find())和 Redis 命令,无需改变操作习惯。 - 视觉出色:支持 ANSI 彩色输出和结果美化,让数据库调试不再枯燥。
- 极致效率:支持命令历史记录、快捷键操作,像在本地终端一样丝滑。
🛠️ 技术硬核:如何优雅的做技术选型?
作为一个开源的 Web 工具,利用 AI 重构时我在技术选型和优化上做了大量工作:
- 前端架构:
React+Vite。这是目前前端技术选型中的典中典。 - 通信协议:
tRPC。这是本项目的一大亮点,实现了前后端端到端的全类型安全。你修改了后端的 Zod Schema,前端会立即感知到类型变化,从源头上杜绝了 API 报错。 - 后端:
Node.js+dirzzle+MySQL。高效处理并发连接。 - 连接池:
Sequelize+io-redis+mongoose。现在看来,Sequelize 绝对没有 dirzzle 优雅,但是 MySQL 的历史包袱太重,在重构中还是选择了它。
🛣️ 未来愿景:不止于此
目前的 琅嬛 只是 1.0 阶段。我的路线图中还有许多激动人心的功能:
- MongoDB 与 PostgreSQL 支持:这是目前呼声最高的功能,已在路上。
- ClickHouse & ES 支持:面向大数据场景。
- SQL 执行审计:记录每一条 DML 操作,安全可追溯。
- 更强的协作功能:支持团队共享连接配置(加密存储)。
- 版本兼容:兼容主流的数据库版本。
🤝 邀请你共建
我是一名在一线工作的工程师,琅嬛 是我在工作之余持续维护的热情所在。
- 如果你是使用者:欢迎点击下方地址试用,你的反馈是对我最大的鼓励。
- 如果你是开发者:欢迎提交 Pull Request,无论是 UI 的微调还是新驱动的实现,我都虚位以待。
- 需求征集:如果你在日常开发中有什么数据库操作痛点,请在评论区留言,我会根据反馈安排优先级。
🔗 传送门
- 在线试用:langhuan.x1.pub
- 开源地址:github.com/x1-pub/lang…
在这个技术日新月异的时代,我也许无法做出最完美的软件,但我会坚持做一个真正解决问题、懂开发者的软件。
如果这篇文章或者这个项目打动了你,点个赞、点个 Star,这就是开发者之间最温暖的连接。
本文首发于掘金 (juejin.cn)