SF
嘚吧时间
嘚吧时间
注册登录
关注博客
注册登录
主页
关于
RSS
Claude Code 9个实战技巧
Sean
5 月 18 日
阅读 5 分钟
607
本文基于 Claude Code in Action 官方课程、官方文档,整理提炼出的 9个最能拉开生产力差距的核心技巧。这些不是"了解一下就行"的功能介绍,而是每天都会用到的实战技能。
全面拆解 Lark CLI:传统业务架构如何跨入 Agent 协同时代?
Sean
4 月 1 日
阅读 4 分钟
1k
近期,飞书官方低调开源了其功能强大的命令行工具(Lark CLI)。作为长期关注基础架构与研发工具链的从业者,我第一时间拉取了源码并进行了系统性走读。
再见 Moment.js!浏览器原生支持的新一代时间库 Temporal 来了
Sean
3 月 12 日
阅读 3 分钟
701
只要你写过JS,就一定被“时间”折磨过:跨国业务里诡异的本地时差、一加一减就原形毕露的月份溢出、还有为了简单格式化不得不引入的庞大第三方库……今天,这个困扰前端 30 年的史诗级暗坑,终于要被彻底填平了。
逻辑引擎与自动化 —— 事件驱动的后续动作 (Workflow Logic)
Sean
3 月 10 日
阅读 4 分钟
639
MetaForm 低代码引擎系列 · 第 5 篇(完结篇)技术栈:FastAPI BackgroundTasks / Go Channel + Event Bus
声明式规则引擎 —— 在运行时执行表单校验 (Validation Rules)
Sean
3 月 10 日
阅读 4 分钟
594
这种写法的致命伤:每新增一个表单、每修改一个校验规则,都需要重写代码、重跑测试、重新发版。 这违背了低代码平台"元数据驱动、动态生效"的最高原则。
拒绝全表扫描!低代码平台基于 JSONB 函数索引的高性能 DML 落地指南
Sean
3 月 9 日
阅读 6 分钟
618
MetaForm 低代码引擎系列 · 第 3 篇 基于 JSONB 函数索引的高性能 DML 落地指南技术栈:Python FastAPI + PostgreSQL JSONB + GIN 索引
数据即 UI —— Vue.js 打造 Schema 驱动的动态前端
Sean
3 月 9 日
阅读 6 分钟
725
MetaForm 低代码引擎系列 · 第 2 篇技术栈:Vue.js 3 + Composition API + 动态组件一、前端硬编码的终结在传统前端开发中,表单页面是这样写的: {代码...} 每个 <input>、每个 <select> 都硬编码在 .vue 文件中。这种做法在低代码系统中无法存活:结构不可预知:表单由租户管理员在运行时动态创建,前端不...
告别硬编码建表 —— 元数据字典 (UDD) 与 JSONB 物理存储
Sean
3 月 9 日
阅读 5 分钟
741
MetaForm 低代码引擎系列 · 第 1 篇技术栈:PostgreSQL (JSONB) + Python FastAPI + Vue.js
拆解低代码引擎核心:元数据驱动的"万能表"架构
Sean
3 月 3 日
阅读 5 分钟
842
比如我们要开发一个问卷系统,很自然地会建立 Survey(问卷表)、Question(题目表)、Response(答卷表)。表里定义好具体的列:title 是 VARCHAR,score 是 Int,createdAt 是 DateTime。各司其职,结构清晰。当平台只有几十、上百个客户,且他们的业务流程基本一致时,这套做法不仅高效,而且非常优雅。
我要用元数据驱动,从零搭一个低代码平台 —— 并讲明白整个架构
Sean
3 月 2 日
阅读 1 分钟
647
低代码这个词,越来越频繁地出现在各种招聘 JD 里,出现在产品经理的 PPT 里,甚至出现在 CTO 们的技术规划里。但如果你去问周围大多数工程师——"低代码底层是怎么跑的",大概率换来的是一脸懵逼。
手写无限画布4 —— 从视觉图元到元数据对象
Sean
2 月 27 日
阅读 5 分钟
889
尽管在前面的篇章中,我们一路披荆斩棘,搞定了坐标系、渲染层和基本交互,让演示工程初具雏形。但 Canvas 本质上只是一块没有记忆的像素面板。
手写一个无限画布 #3:交互层的失控与秩序构建
Sean
2 月 27 日
阅读 4 分钟
813
上一篇我们终于搞定了渲染层,并明确选择了 Konva (Canvas 2D) 作为我们的底层渲染基石。现在,我们的屏幕上终于可以丝滑地渲染出极具表现力的图形了。
手写一个无限画布 #2:渲染层的博弈:Canvas 还是 WebGL ?
Sean
2 月 26 日
阅读 3 分钟
997
浏览器为了渲染 DOM 和 SVG 节点,底层维护了一套极其庞大的对象模型和布局引擎。每一次你在触控板上轻轻一划,哪怕只是让相机的世界坐标移动几个像素,都可能被迫引发大量节点的重排(Reflow)与重绘(Repaint)。
手写一个无限画布 #1:坐标系的谎言
Sean
2 月 25 日
阅读 5 分钟
905
系列目录坐标系的谎言:你从来没有拖动过画布(本篇)渲染层的博弈:Canvas 还是 WebGL?交互层的失控:当浏览器事件不够用对象层的进化:从图元到 Prompt
Python 异步生存手册:给被 JS async/await 宠坏的全栈工程师
Sean
2 月 8 日
阅读 3 分钟
835
还记得当初被 JavaScript 的 async/await 惊艳到的时刻吗?一个 await,就把那些繁琐的回调地狱(Callback Hell)变成了优雅的同步代码,让 Web UI 始终保持流畅。你可能心里暗想:“Python 要是有这玩意儿就好了。”
Rust 重塑 Python 生态:uv + Systemd 的生产级实践
Sean
2 月 5 日
阅读 2 分钟
815
对于工作了几年的朋友,写一个 Hello World 或者跑通一个脚本早已不是问题。但当我们把视角切换到工程交付和团队协作时,很多人的 Python 项目依然停留在“作坊”阶段:
TypeScript 中 Type 和 Interface 傻傻分不清?看完这篇就不纠结了
Sean
2025-12-24
阅读 3 分钟
1.1k
打开一个老项目,或者在做 Code Review 时,发现代码里一会儿是 interface Props,一会儿又是 type State。问同事为什么要混用,他也支支吾吾说不出个所以然,最后只能来一句:“哎呀,反正都能跑,看心情呗。”
从硬编码到 Schema 推断:前端表单开发的工程化转型
Sean
2025-12-21
阅读 4 分钟
1k
最初,页面只有 5 个字段,你写得优雅从容。随着业务迭代,表单像吹气球一样膨胀到了 50 多个字段:“如果用户选了‘个体工商户’,不仅要隐藏‘企业法人’字段,还得去动态请求‘经营地’的下拉列表,同时‘注册资本’的校验规则还要从‘必填’变成‘选填’……”
别再折腾端口转发了:使用 Cloudflare Tunnel 优雅地分享你的 localhost
Sean
2025-12-17
阅读 2 分钟
6.7k
在前后端联调、移动端真机测试、或是调试 Webhook 回调时,我们总会遇到同一个难题:如何让外网用户安全地访问我本地的端口(如 localhost:3000)?
从 Vue 到 React:我才发现 useRef 和 ref 差这么多
Sean
2025-08-10
阅读 2 分钟
1.7k
以前我在写 Vue 项目的时候,ref 对我来说就是家常便饭——无论是存状态还是拿 DOM,改一下 .value 就能自动触发 UI 更新,几乎没怎么去想它背后的机制。
解放你的主线程:Web Worker 入门指南
Sean
2025-05-11
阅读 5 分钟
2.4k
想象一下,你的网页正在处理一项耗时巨大的任务,比如分析一份庞大的数据报告,或者进行一场复杂的图形渲染。在这期间,你的页面可能会变得卡顿,按钮点不动,动画也停止了,仿佛整个世界都静止了。这是怎么回事?这就是 JavaScript 单线程带来的常见问题——主线程被阻塞了。
飞连卸载要密码?别慌!Win/Mac 无密码强制卸载教程来了
Sean
2025-05-08
阅读 1 分钟
9.5k
飞连是 由火山引擎提供的一款 网络 服务工具。 在大部分企业中用于VPN 网络服务和本地的wifi 认证一些服务。 当然,可能还有一些网络监控服务。
深度对比:Chrome扩展框架 Crx.js vs. Plasmo vs. WXT
Sean
2025-03-24
阅读 1 分钟
3.1k
浏览器扩展开发领域正在快速进化。本文将从 GitHub 人气、上手体验、云服务支持、MVVM 框架兼容性、工程化能力和社区生态六大维度,完整呈现三大框架的差异 , 并分析各自更适合的场景。
为什么音量设置最大是100,却还有许多音量增强300%的插件?
Sean
2025-02-06
阅读 2 分钟
2.4k
在日常使用在线音视频服务(如: bilibili, 腾讯视频等)时,我们通常会注意到一个有趣的现象:设备的音量通常被限制在100%(或类似的最高级别),但市场上却存在大量的音频增强插件或技术,宣称可以提升音量或改善音质。这种现象的背后不仅仅是简单的“音量放大”,而是涉及了一系列复杂的技术原理和应用场景。
开发浏览器插件太难?试试 crxjs,效率飙升的秘密武器!
Sean
2025-01-08
阅读 3 分钟
3.2k
浏览器插件开发一直以来都是前端开发者的一块重要阵地。它能让我们通过扩展浏览器功能,为用户提供便捷的工具和更流畅的使用体验。然而,许多开发者在尝试插件开发时,却常常因为复杂的 API、缺乏现代开发工具支持以及传统工具链无法实现热重载而望而却步。每次修改代码都需要重新打包、加载插件,甚至重启浏览器,不仅...
我的2024总结
Sean
2024-12-31
阅读 1 分钟
1.4k
2024这一年对我来讲非常特殊。 之所以说特殊,是因为2个点,首先我在2024年36岁,比较平稳的度过了程序员的35岁危机。第二点呢,我是在2024年1月1号,从上家公司被裁员掉的。 所以该来的总是会来吧。
Vue-Office 赋能 B 端应用:让文档预览如此简单
Sean
2024-12-19
阅读 3 分钟
2.6k
在 B 端管理类系统中,企业经常面临大量文档附件的预览需求,例如合同、方案、报告等。一个好用的在线文档预览解决方案,能够大幅提升系统的用户体验和文档管理效率。这篇文章将为大家介绍一款基于 Vue 的文档预览工具——vue-office。
npm workspaces 已经够强了,为何还需要 MonoRepo 方案?
Sean
2024-12-05
阅读 3 分钟
2.8k
随着项目规模的增长和模块化需求的增强,MonoRepo(单一代码库)的管理方式正在成为热门选择。本文将带领你了解 MonoRepo 的形成背景,探讨主流解决方案(如 pnpm workspaces、TurboRepo、Nx 和 Rush),并通过对比分析这些工具的优劣与适用场景,最终帮助你选择最适合的工具。
Chrome 插件开发入门:从想法到实现,只需半小时!
Sean
2024-12-03
阅读 3 分钟
2k
还记得那些认为 “浏览器仅仅用于上网” 的日子吗?若把浏览器当作你的小助手,那么 Chrome 插件便是它的超能力套装。今日,我将用半小时,引领你步入 Chrome 插件的奇妙世界,从无到有开发自己的 “浏览器外挂”。
开发必读:Electron 本地存储的几种实现方式
Sean
2024-11-07
阅读 3 分钟
3.6k
Electron 本地存储至关重要,能实现跨平台数据一致、离线访问、快速读写及保障数据安全。然而也有一些其自身的局限性。那么,有哪些本地数据存储方法呢?接下来我们将探讨几种常见的 Electron 本地数据存储方式,以更好地发挥其作用。
1
(current)
2
下一页
1
(current)
下一页