bupt.moe
#security NPM debug 包出现大新闻,任何安装/运行了这个包的电脑均应视为已失陷。 更新: 多个npm包的作者 Qix- 被钓鱼,npm账号失陷。黑客上传了多个有恶意代码的npm包。具体包列表可以在以下链接查看:https://github.com/debug-js/debug/issues/1005#issuecomment-3266868187 更新2: 有人开骂了 You bloody motherfucker hacked a reputed account and still…
#碎碎念
麻了,还有 chalk 和 color 🥹
不过对咱来说没啥影响,不过这都第几起了
麻了,还有 chalk 和 color 🥹
不过对咱来说没啥影响,不过这都第几起了
All affected packages:
ansi-styles@6.2.2
debug@4.4.2
chalk@5.6.1
supports-color@10.2.1
strip-ansi@7.1.1
ansi-regex@6.2.1
wrap-ansi@9.0.1
color-convert@3.1.1
color-name@2.0.1
is-arrayish@0.3.3
slice-ansi@7.1.1
color@5.0.1
color-string@2.1.1
simple-swizzle@0.2.3
supports-hyperlinks@4.1.1
has-ansi@6.0.1
chalk-template@1.1.1
backslash@0.2.1
There might be others;
#优质博文 #SwiftUI #iOS #layout
写 SwiftUI 总觉得我在重学前端(某种意义上好像也确实是)
SwiftUI 布局 —— 对齐
author 东坡肘子
写 SwiftUI 总觉得我在重学前端(某种意义上好像也确实是)
SwiftUI 布局 —— 对齐
AI 摘要:本文系统梳理了 SwiftUI 中的对齐 (Alignment) 概念,围绕 "以什么为对齐指南、对哪些视图进行对齐" 两个核心展开,深入介绍了对齐指南 (Alignment Guide) 的定义与自定义方法、显式值机制、特殊文本基线情况,以及在 VStack、HStack、ZStack、overlay、background、frame 等容器和修饰器中的具体表现,并通过 Layout 协议验证对齐机制,为开发者更好理解 SwiftUI 布局逻辑提供了清晰框架。
[以下是方便搜索索引的大纲(AI 生成),请读原文]
1. 什么是对齐 (Alignment)
• 对齐是指在布局容器中视图根据对齐指南 (Alignment Guide) 的参考点或参考线进行排列
• SwiftUI 强调用两个核心问题:依据的对齐指南 + 哪些视图需要对齐
2. 对齐指南 (Alignment Guide)
• 定义:由 HorizontalAlignment 和 VerticalAlignment 构成,既可标识点也可标识线
• SwiftUI 预置值如 leading、center、trailing、top、bottom 等,并可组合
• 自定义对齐指南:通过实现 AlignmentID 并扩展 HorizontalAlignment / Alignment
• alignmentGuide 修饰器:为视图指定对齐指南显式值,覆盖默认值
• 显式值机制:nil → 使用默认值;返回值 → 设置显式值,即使值等于默认值
• 特殊对齐:firstTextBaseline、lastTextBaseline 随内容情况变化
• 复合容器的显式值计算规则:取子视图中特定基线显式值的最高或最低
3. Layout 协议与显式对齐
• SwiftUI 4.0 引入 Layout 协议,支持自定义布局容器
• explicitAlignment 方法允许开发者设置容器中视图的显式对齐值
• 缺省实现返回 nil,但自定义实现能验证基线计算规则
• 即使容器提供显式值,开发者仍可用 alignmentGuide 覆盖
4. 对齐适用于哪些视图
• VStack、HStack、ZStack:alignment 参数应用在子视图之间,而非子视图与容器
• 布局容器工作原理:容器计算子视图需求尺寸,于虚拟坐标系中摆放,再由父容器决定整体位置
• overlay、background:类似特殊 ZStack,主视图尺寸决定容器,附加视图按指南对齐
• frame:作为单子视图容器,强行修改建议尺寸,表现为子视图对虚拟视图对齐
5. 总结
• SwiftUI 对齐的精髓在于明确“对齐指南来源”与“对齐的作用对象”
• 掌握显式值与容器布局逻辑能减少开发者对对齐偏差的困扰
• 理论掌握后在实际开发中可构建复杂灵活的自定义布局
author 东坡肘子
fatbobman.com
SwiftUI 布局 —— 对齐
深入解析SwiftUI对齐原理,结合Layout协议,详解对齐指南、显式值及first/lastTextBaseline,助你掌握VStack/HStack/ZStack布局精髓。解锁SwiftUI布局难题。
❤1
#优质博文 #AI #NLP #LLM #OpenAI
Why language models hallucinate
author OpenAI
Why language models hallucinate
AI 摘要:本文由 OpenAI 团队撰写,深入探讨了大语言模型(LLM)产生“幻觉”的根本原因,指出是现有训练与评估机制奖励了“猜测”而非“不确定性表达”。作者通过统计学视角分析幻觉来源,强调优化 eval (评估机制) 比单纯提升模型规模更关键,并提出需惩罚“自信的错误”,奖励恰当的不确定性表达,以推动模型更可靠和更安全。
[以下是方便搜索索引的大纲(AI 生成),请读原文]
1. 幻觉(hallucinations)的定义与案例
• 幻觉是语言模型生成的“貌似合理但错误”的信息。
• 案例:模型对作者的博士论文题目或生日给出多个版本,全部错误。
2. 评估体系的问题 (“Teaching to the test”)
• 现有 eval 大多单纯以“准确率”为指标,导致模型倾向于胡乱作答,而不是坦率回答“不知道”。
• 类似选择题考试:盲目猜测在统计上可能比“空白不答”获得更高分数,因此模型被激励去猜。
• OpenAI 强调“谦逊”(humility),并提出评分机制应惩罚错误多于不答,并鼓励表达不确定性。
3. 幻觉的来源机制:下一词预测 (next-word prediction)
• 预训练阶段仅基于预测下一个词,没有“真/假”标注,导致难以区分真伪信息。
• 高频模式(如拼写规则)能被可靠学习,但低频事实(如生日)因缺乏规律难以预测,从而引发幻觉。
• 低频信息与统计不可预测性导致某些类型的幻觉难以通过规模化完全消除。
4. 常见误解与澄清
• “准确率提升后幻觉会消失”:错误,因为真实世界存在无法回答的问题,因此准确率永远无法达 100%。
• “幻觉无法避免”:错误,模型可以选择“不回答”。
• “避免幻觉需更大模型”:错误,小模型有时更容易知晓自身局限。
• “幻觉是神秘 bug”:并非,已有对其统计学成因的理解。
• “仅需开发新的幻觉评测方法”:不够,只有重构主流 eval,奖励不确定性才能系统性减少幻觉。
5. 结论与未来方向
• 幻觉是评估体系与预测机制共同作用的必然产物。
• 通过惩罚“自信错误”、奖励“不确定性表达”,可以有效降低幻觉发生概率。
• OpenAI 新模型 (如 GPT‑5) 显著减少幻觉,但该问题仍是 LLM 的核心挑战,研究仍在持续推进。
author OpenAI
Openai
Why language models hallucinate
OpenAI’s new research explains why language models hallucinate. The findings show how improved evaluations can enhance AI reliability, honesty, and safety.
#优质博文 #前端 #ReactNative #架构迁移 #移动开发 #Shopify
Migrating to React Native's New Architecture (2025) - Shopify
author Thiago Magalhaes
Migrating to React Native's New Architecture (2025) - Shopify
AI 摘要:本文详细介绍了 Shopify 如何在持续迭代和数百万用户使用的前提下,将 Shopify Mobile 与 Shopify POS 成功迁移到 React Native 新架构 (Fabric + TurboModules)。迁移过程中坚持“最小代码改动、新旧架构并行兼容、性能稳定性不退化”三大原则,解决了多种迁移使用中的难题,并与开源社区和 Meta 合作推动性能优化。最终实现了稳定迁移、性能提升和生态回馈,并分享了对其他团队的建议与未来优化方向。
1. 迁移策略与原则
- 最小化改动优先,优化与重构延后来做
- 保持新旧架构并行兼容,避免开发停滞
- 确保性能与稳定性不退化,关注 TTI 与 crash-free 指标
2. 迁移过程与技术实现
- Native 模块:仅改造不兼容模块,TurboModules 迁移延后规划
- 依赖管理:升级/替换库,减少依赖规模
- 首先升级到最新 React Native 版本,减少低层 bug 影响
- 应用代码最小改动,增加 deprecation warning 便于后续清理
author Thiago Magalhaes
Shopify
Migrating to React Native's New Architecture (2025) - Shopify
Shopify successfully migrated two of its largest apps, Shopify Mobile and Shopify Point of Sale (POS) to React Native's New Architecture while maintaining weekly releases and serving millions of merchants. This migration involved a complex codebase with hundreds…
#优质博文 #JavaScript #React #ES2023 #前端 #新特性
Finally, safe array methods in JavaScript - Matt Smith
author Matt Smith
Finally, safe array methods in JavaScript - Matt Smith
AI 摘要:传统的 JavaScript 数组方法如 .sort() 、 .reverse() 和 .splice() 会直接修改原数组,可能带来难以排查的 bug,尤其在 React 等依赖 不可变数据 (immutability) 的框架中。ES2023 新增了 toSorted() 、 toReversed() 和 toSpliced() ,它们返回新数组而不会变异原始数据,从而提升代码可维护性和安全性。这一细小的语法改进带来了巨大的开发体验优化,特别是在现代前端应用中。
[以下是方便搜索索引的大纲(AI 生成),请读原文]
1. 新的不可变 (non-mutating) 方法
• toSorted():返回排序后的新数组,允许自定义比较函数
• toReversed():返回反转后的新数组,避免破坏原数组
• toSpliced():返回元素增删后的新数组,保持原数组不变
2. 在 React 中的应用场景
• 保证状态不可变性,触发正确的重新渲染
• 常见用法:展示反向排序的任务列表、根据条件生成新数组
• 避免额外的深拷贝操作(如 structuredClone())
3. 浏览器与环境支持
• Chrome/Edge 110+、Safari 16+、Firefox 115+、Node.js 20+ 原生支持
• 旧环境可依赖 core-js 提供 polyfill
• 与其他 ES2023 特性互补,如 optional chaining、top-level await
author Matt Smith
Allthingssmitty
Finally, safe array methods in JavaScript - Matt Smith
Learn how to safely sort, reverse, and splice arrays in JavaScript using ES2023 methods toSorted(), toReversed(), and toSpliced(). Perfect for React and modern JS development.
#优质博文 #前端 #LiquidGlass #CSS #svg #demo #webgl #course
超级棒的交互式教程,并且技术解析的也很全面,内含非常多 demo,玩明白了,非常值得一看。
Liquid Glass in the Browser: Refraction with CSS and SVG
[以下是方便搜索索引的大纲(AI 生成),请读原文]
author kube
超级棒的交互式教程,并且技术解析的也很全面,内含非常多 demo,玩明白了,非常值得一看。
Liquid Glass in the Browser: Refraction with CSS and SVG
AI 摘要:本文通过物理折射原理(Snell 定律)、几何曲面函数、向量场计算以及 SVG displacement map,逐步构建出类似 Apple Liquid Glass 的玻璃折射与高光效果。作者在 Chrome 中实现了交互式演示,并展示了如何组合折射与高光生成 UI 组件(如 magnifying glass、searchbox、switch、slider、music player)。该方法目前仍为实验性质,仅限 Chromium 引擎支持。
[以下是方便搜索索引的大纲(AI 生成),请读原文]
1. 引言与目标
• Apple 在 WWDC 2025 引入 Liquid Glass 特效,形式上像弯曲玻璃产生的真实折射。
• 文章聚焦于折射物理与 CSS + SVG 技术结合,打造近似效果,而非完全复刻。
2. 折射原理(Refraction)
• 光在不同介质中的传播方向变化由 Snell 定律描述。
• 光线可能发生直线穿过、偏折、或在特定条件下全反射。
• 本文限制简化:空气介质、玻璃折射率 1.5、单次折射、平行二维场景。
3. 表面函数(Surface Function)与曲面建模
• 使用数学函数描述玻璃表面(厚度与曲率变化)。
• 四种典型函数:凸圆(convex)、squircle、凹面(concave)、Lip 混合曲线。
• 借助导数计算表面法线,用于后续光线折射角度推导。
4. 光线模拟与向量场计算
• 通过 ray tracing 可视化不同表面对光线的影响。
• 总结规律:凸面内聚,凹面外推。
• 基于对称性,预计算半径上的位移值,旋转生成完整 displacement field。
• 向量归一化处理,便于映射到位图。
5. SVG Displacement Map 实现
• <feDisplacementMap /> 用红绿通道(X/Y 轴)编码位移。
• 位移向量场需转为位图像素值(Color Encoding)。
• scale 属性用于匹配实际像素位移最大值。
• 支持动画 scale 参数,使折射动态变化。
6. 高光效果(Specular Highlight)
• 在折射效果之上叠加 rim light 模拟玻璃边缘光泽。
• 通过 feBlend 合成折射图层与高光。
• 高光强度取决于表面法线与光源角度。
7. 在 UI 组件中的应用(Proof-of-Concept)
• Magnifying Glass:双 displacement map 模拟放大镜折射 + 阴影。
• Searchbox:背景折射 + 边缘高光。
• Switch:Lip 曲线导致中间收缩,边缘放大。
• Slider:凸曲面保持背景可读性,边缘折射。
• Music Player:近似 Apple Music Liquid Glass 效果,结合磁贴相册背景。
8. 限制与展望
• 仅 Chromium 支持 backdrop-filter 调用 SVG filter。
• 性能瓶颈:动态形变需重建 displacement map。
• 可作为 Electron 等环境下的实验性特效;非生产级实现。
• 未来方向:代码优化、开放源码、跨引擎兼容处理。
author kube
❤1
#优质博文 #CSS #JavaScript #多媒体 #开源 #资讯
Sponsoring Mediabunny | Remotion | Make videos programmatically
Sponsoring Mediabunny | Remotion | Make videos programmatically
AI 摘要:本文介绍了 Remotion 与 Mediabunny 的合作。Remotion 决定停止自身的 Media Parser 和 WebCodecs 项目,全面支持由 Vanilagy 开发的 Mediabunny,该库具备更快性能、更佳架构和更自由的许可。此举包括资金赞助、代码贡献和推广支持,目标是推动 Mediabunny 成为 Web 上的首选多媒体工具库,从而让浏览器能实现更高效的视频处理与应用。
www.remotion.dev
Sponsoring Mediabunny | Remotion | Make videos programmatically
With WebCodecs, we get an exciting new API for the browser, allowing us to bring performant multimedia workflows to the web.
#优质博文 #CSS #前端 #新特性 #course
通过九个新模块重新学习 CSS
[以下是方便搜索索引的大纲(AI 生成),请读原文]
author Rachel Andrew
通过九个新模块重新学习 CSS
AI 摘要:本文介绍了 Web.dev 更新的 Learn CSS 课程,新增了 9 个涵盖最新 CSS 功能的模块,例如 CSS 嵌套 (nesting)、容器查询 (container queries)、自定义属性 (custom properties)、锚点定位 (anchor positioning) 等。此次更新反映了近四年 CSS 的重大进展,模块同时关注 Baseline 功能保证了实用性,适合学习或提升前端开发技能的开发者。
[以下是方便搜索索引的大纲(AI 生成),请读原文]
1. Learn CSS 课程的演进
• 2021 年推出的 Learn CSS 是 Web.dev 基础 Web 开发内容的起点
• 四年间 CSS 特性快速发展(如容器查询从无到广泛可用)
• 每月数千人使用此课程,促使更新迭代
2. 本次更新的核心内容
• 新增 9 个重要模块:
• CSS 嵌套
• 容器查询
• 自定义属性
• 计数器
• 光标和指针
• 锚点定位
• 浮层和对话框
• 单页应用 (SPA) 的视图过渡
• 路径、形状、剪切和遮罩
• 更新后的模块紧贴近几年 CSS 标准发展与浏览器支持
3. Baseline 功能的聚焦
• 所有教学功能均已达到或即将进入 Baseline 状态
• 包括 Interop 2025 中的新特性,如锚点定位和视图转换
• 每个模块配有明确的浏览器支持信息,保证学习即用
author Rachel Andrew
web.dev
通过九个新模块重新学习 CSS | Blog | web.dev
我们广受欢迎的“学习 CSS”课程已更新,新增了涵盖最新 CSS 功能的模块。
#优质博文 #CSS #动画 #color #前端
Color Shifting in CSS • Josh W. Comeau
[以下是方便搜索索引的大纲(AI 生成),请读原文]
author Josh W. Comeau
Color Shifting in CSS • Josh W. Comeau
AI 摘要:本文通过构建粒子效果的案例,揭示了在 CSS 中实现颜色动态变化时会遇到的限制(如 RGB 插值导致灰色过渡),并提出利用 CSS filter 中的 hue-rotate() 作为更佳的解决方案。同时,作者还演示了如何使用随机性和闪烁效果(twinkling)增强动画的自然感受,最后预告了即将上线的动画课程。
[以下是方便搜索索引的大纲(AI 生成),请读原文]
1. 引言:粒子特效与颜色变化的重要性
• 粒子从随机颜色开始,逐渐淡出时改变色相 (hue)
• 动画核心在于“颜色渐变”而非单一随机取色
2. 颜色生成的方式
• 使用 RGB 随机值生成色彩 → 结果缺乏统一风格
• 使用 HSL 固定饱和度和亮度,只在色相上变化 → 形成更加统一的色调效果
3. 从单一颜色到颜色过渡
• 初步尝试利用 HSL 渐变 → 浏览器实际以 RGB 插值,导致过渡中间产生灰度色
• HSL 的 0° 与 360° 等效,无法实现完整色相轮动画
4. CSS 渲染限制:RGB 插值问题
• color-transition 过程中浏览器默认以 RGB 渠道计算
• 中间值往往失真,无法表现我们感知的平滑色相变化
5. CSS filter 的解决方案
• 使用 filter: hue-rotate() 实现真实的色相旋转
• 可实现超过 180° 的平滑过渡
• 注意:该方法常使颜色显得更暗,需要选择更亮或低饱和度的初始色
6. 增强动画的细节:Twinkling 闪烁效果
• 使用 keyframes + 随机参数产生轻微闪烁,避免所有粒子同步
• 过渡不再是死板的线性透明度衰减,而是更自然的消隐效果
author Josh W. Comeau
Joshwcomeau
Color Shifting in CSS • Josh W. Comeau
A little while ago, I was trying to animate an element’s background color, so that it cycled through the rainbow. Seems easy, but it turns out, browsers have a surprisingly big limitation when it comes to color processing! In this tutorial, we’ll dig into…
#碎碎念 #emo #音乐
(只是表示我也会经常 emo 的一条碎碎念)
最近几天的精神状态一直不是很好,晚上不停哭没来由的难过,睡不着觉经常性好晚才入睡,但是白天工作时间又会回到正常状态,真有点精神分裂的感觉了。
明明各方面生活都很正常,工作体验和收入现状也很满意,这难道就是传说中的无病呻吟?🥲听妲喵说前些天晚上还睡着睡着突然抱着哭的一抖一抖的,但是我完全没印象,好怪哦好怪哦。人体真是太复杂辣!
但是听歌就会好很多,嗯。
安利一首歌:「雪路」- 诗岸/wukino
但是心理真有问题的显然不会发出来,所以我还是正常的(对,对吗)
(只是表示我也会经常 emo 的一条碎碎念)
最近几天的精神状态一直不是很好,晚上不停哭没来由的难过,睡不着觉经常性好晚才入睡,但是白天工作时间又会回到正常状态,真有点精神分裂的感觉了。
明明各方面生活都很正常,工作体验和收入现状也很满意,这难道就是传说中的无病呻吟?🥲听妲喵说前些天晚上还睡着睡着突然抱着哭的一抖一抖的,但是我完全没印象,好怪哦好怪哦。人体真是太复杂辣!
但是听歌就会好很多,嗯。
安利一首歌:「雪路」- 诗岸/wukino
但是心理真有问题的显然不会发出来,所以我还是正常的(对,对吗)
网易云音乐
雪路
歌曲名《雪路》,由 wukino 演唱,收录于《雪路》专辑中
❤4
#优质博文 #前端 #CSS #typography #font #opentype
这篇文章还推荐了一个可以玩这些可变字体的网站 v-fonts.com
Features of your font you had no idea about
[以下是方便搜索索引的大纲(AI 生成),请读原文]
author OlegWock
这篇文章还推荐了一个可以玩这些可变字体的网站 v-fonts.com
Features of your font you had no idea about
AI 摘要:本文深入介绍了高质量字体 (high-quality fonts) 所附带的各种隐藏功能,尤其是 OpenType 及 Variable Fonts 的特性,如 axes 变化、替代字形 (alternates)、swashes、数字样式 (numerals)、小型大写 (small caps)、上下文替换 (contextual alternates) 等,并结合 CSS 的相关属性给出实践方式。文章核心思想是:字体远不止「粗体/斜体」,合理启用这些特性能够提升应用设计的可读性与美感。
[以下是方便搜索索引的大纲(AI 生成),请读原文]
1. Variable Axes(可变字体轴线)
• OpenType 字体支持多个轴 (axes),如 wght(weight)、wdth(width)、slnt(slant)、ital(italic)、opsz(optical size)。
• CSS 提供对应属性 (如 font-weight),但对于自定义轴需用 font-variation-settings。
• font-variation-settings 存在级联冲突问题,可通过 CSS variables 解决。
2. Alternates(替代字形)
• Stylistic alternates:用 salt、ss01、cv01 等替换字符形态(如 “a”、“g”)。
• CSS 可通过 font-feature-settings 或 font-variant-alternates 控制,后者更可读,但同样有继承覆盖问题。
3. Swashes(装饰性字形)
• 一些字体附带装饰性笔画 (swashes),可增强标题表现力。
• 使用 font-feature-settings 或 font-variant-alternates 启用。
4. Numerals(数字字形样式)
• 字体可包含 lining numerals(对齐大写字母高度)、old-style numerals(小写高度)、tabular(等宽)、proportional(按比例)。
• 使用 font-variant-numeric 控制,如 tabular-nums、oldstyle-nums。
• 场景:表格更适合 tabular,正文常用 proportional 或 old-style。
5. Small Caps(小型大写)
• 小型大写可减少正文中大写字母突兀的问题。
• 使用 font-variant-caps(small-caps 或 all-small-caps)。
• 避免浏览器自动合成(非真正小型大写),可通过 font-synthesis 禁用。
6. Contextual Alternates(上下文替换)
• 自动替换特定上下文中的字符形态,如 → 符号、@ 符号的排版优化。
• 多数字体默认启用,可通过 font-variant-ligatures: no-contextual 禁用。
7. Further Reading(扩展资料)
• 提及更多 OpenType 特性(连字、分数、历史字形、花饰等)。
• 推荐网站、演讲与「Variable Fonts Primer」。
author OlegWock
V-Fonts
Variable Fonts
A simple resource for finding and trying variable fonts.
#优质博文 #前端 #DX
我觉得这篇说的很好,学习 “新趋势” ≠ “立刻引入”,应基于实验和需求,而非市场营销热度。
Too many tools: How to manage frontend tool overload - LogRocket Blog
author Shalitha Suranga
我觉得这篇说的很好,学习 “新趋势” ≠ “立刻引入”,应基于实验和需求,而非市场营销热度。
Too many tools: How to manage frontend tool overload - LogRocket Blog
AI 摘要:本文回顾了前端开发工具从 2009–2013 的简洁时代(以 JavaScript、jQuery、HTML、CSS 为主)到 2015 后的工具爆炸时期(SPA、TypeScript、各类框架、构建工具与 AI 工具层出不穷)的演变,指出当下开发者陷入“工具过载”,导致决策困难、学习曲线陡峭、工具频繁替换(tool churn)等问题。作者提倡理性选工具:优先选择成熟、社区验证的方案,避免盲目追逐潮流,注重团队稳定性、代码可维护性和适用性,而非工具数量和新潮程度。
author Shalitha Suranga
LogRocket Blog
Too many tools: How to manage frontend tool overload - LogRocket Blog
Read about how the growth of frontend development created so many tools, and how to manage tool overload within your team.
#趣站 #设计
太美了!
诗人 David Whyte 的官网,以 WebGL 呈现水彩画般的互动质感,创造独特的艺术体验。介绍
网站地址:https://davidwhyte.com/experience/
太美了!
诗人 David Whyte 的官网,以 WebGL 呈现水彩画般的互动质感,创造独特的艺术体验。介绍
网站地址:https://davidwhyte.com/experience/
🔥1