- Published on
2025-第十一周
- Authors
- Name
- AgedCoffee
- @__middle__child
该周报主要为各个地方内容的汇总整理
- 技术
- 如何利用子部分分析来解决最大内容绘制(Largest Contentful Paint)的问题
- 超越 React.memo:更聪明的性能优化策略
- 使用 JavaScript 进行文件上传的 7 个最佳实践
- 利用 Next.js 创建 API 接口
- 工具
- ts-brand
- flowgram.ai
- eslint-plugin-readable-tailwind
- Node Modules Inspector
- nanobrowser
- search-input-query
- paperless-ai
- CopilotKit
- (better-auth)[https://better-auth-ui.com/]
- Super Color Palette
- 更新
- Bun v1.2.5
- Electron 35.0.0
- 深入探讨 TypeScript 编译器在 Go 语言移植过程中的具体细节
- Chrome 在 2025 年第一季度带来了新功能:包括 CSS 文本框、Android 文件系统访问、基线更新等等!
- 21st
- 辰宇落雁體
- AI
- 译:构建 Agent 的新工具
- 关于 Gemini 2.0 Flash 原生图像生成的实验研究
- 其他
- AI 不会吃掉你 - 少数派
- 为什么莫兰迪色系会显得高级?这种颜色搭配运用在服装上该如何借鉴?
- 25 Hours AI
- 2024 年,我的自信元年
技术
如何利用子部分分析来解决最大内容绘制(Largest Contentful Paint)的问题
Google 最近引入了 LCP 子部分(LCP subparts),帮助开发者更精准地定位页面加载延迟的来源,并通过 Chrome UX 报告提供真实用户数据,帮助优化网站速度和排名。LCP(最大内容绘制)是 Core Web Vitals 中的一个关键指标,衡量用户视角下页面加载的速度。LCP 子部分将 LCP 分解为四个部分:TTFB(首字节时间)、资源加载延迟、资源加载时间和元素渲染延迟。通过分析这些子部分,开发者可以更有针对性地优化网站性能。
- 🕒 TTFB(首字节时间):服务器响应文档请求的速度,优化服务器性能或缓存 HTML 可以减少 TTFB。
- 🖼️ 资源加载延迟:LCP 图像开始下载前的等待时间,避免使用懒加载库或延迟加载 LCP 图像可以优化这一部分。
- ⏳ 资源加载时间:LCP 图像的下载时间,使用现代图像格式、调整图像大小或减少资源竞争可以缩短加载时间。
- 🎨 元素渲染延迟:资源加载完成后,浏览器显示内容的时间,减少渲染阻塞脚本和样式表可以优化这一部分。
- 📊 真实用户数据(CrUX):Google 在 CrUX 报告中加入了 LCP 子部分数据,帮助开发者了解真实用户的加载体验。
- 🛠️ 工具支持:使用 DebugBear 等工具可以详细分析 LCP 子部分,并跟踪优化效果。
超越 React.memo:更聪明的性能优化策略
React 性能优化中,React.memo 常被过度使用,而实际上通过组件组合和状态管理可以更优雅地解决问题。本文探讨了 React 的渲染机制,并提供了几种无需复杂记忆化的优化方案。
- 🛠 React.memo 的局限性:虽然 React.memo 可以避免不必要的重新渲染,但它增加了复杂性和潜在的错误风险。
- 🔍 重新渲染的根源:当父组件状态变化时,所有子组件都会重新渲染,即使它们的 props 没有变化。
- 🧩 状态下沉:将状态管理移到更小的组件中,可以减少不必要的重新渲染。例如,将模态框的状态管理独立出来,避免影响其他复杂组件。
- 🎨 组合模式:通过将组件作为 props 或 children 传递,可以有效避免不必要的重新渲染。例如,将滚动容器中的内容作为 children 传递,避免每次滚动时重新渲染所有内容。
- ⚙ 自定义钩子的陷阱:自定义钩子虽然简化了状态管理,但并不会隔离重新渲染的影响,仍需通过组合模式优化。
- 📌 关键建议:优先通过组件结构和状态管理优化性能,最后再考虑使用 React.memo、useMemo 和 useCallback 等记忆化工具。
使用 JavaScript 进行文件上传的 7 个最佳实践
StorageBowl 是一个现代一体化存储工具,提供占位符图片、媒体流、类似 shadcn 的组件等功能。本文分享了优化上传功能的最佳实践,帮助提升网站性能和上传速度。
- 🖼️ 优化图片:用户不关心图片格式,但未优化的图片会增加成本和降低性能。使用 WebP 格式,并通过 JavaScript 的 sharp 库进行图片处理。
- 📏 设置边界:检查文件的最小/最大尺寸、宽度、高度、文件数量和格式等属性,确保上传文件符合要求。
- 🖌️ 使用占位符:通过 ThumbHash 等算法生成模糊图片的占位符,提升网站加载速度。
- ✂️ 用户赋能:提供裁剪工具,帮助用户选择图片的同时减少存储空间。
- ⏳ 提前上传:在用户选择图片后立即触发预上传功能,减少等待时间,提升效率。
- ⚡ 并行上传:利用 JavaScript 的并行 Promise 支持,显著提高上传速度。
- 🍰 切片大文件:将大文件切片上传,结合并行上传功能,进一步提升上传效率。
利用 Next.js 创建 API 接口
本指南介绍了如何使用 Next.js 构建 API,包括项目设置、App Router 和 Route Handlers 的使用、处理多种 HTTP 方法、实现动态路由、创建可重用的中间件逻辑,以及何时需要创建独立的 API 层。
🚀 开始使用
- 使用
npx create-next-app@latest --api
创建 Next.js 项目,自动生成示例 API 路由文件。 - App Router(默认)与 Pages Router 的区别:App Router 使用 Web 标准的 Request/Response API,简化学习曲线。
- 使用
🤔 为什么(以及何时)使用 Next.js 构建 API
- 为多个客户端构建公共 API,或作为现有后端的代理层。
- 处理 Webhook 和集成,或实现自定义身份验证逻辑。
🛠️ 使用 Route Handlers 创建 API
- 在
app/
目录下创建路由文件夹和route.ts
文件。 - 在同一文件中导出多个 HTTP 方法(如 GET、POST)。
- 在
🌐 使用 Web API
- 直接使用标准的
Request
和Response
对象。 - 处理查询参数、请求头和 Cookies。
- 直接使用标准的
🔄 动态路由
- 使用动态段(如
[id]
)创建动态路径,处理动态参数。
- 使用动态段(如
🔗 将 Next.js 作为代理或转发层
- 代理现有后端服务,处理身份验证、日志记录或数据转换。
🧩 构建共享的中间件逻辑
- 创建可重用的中间件函数(如
withAuth
),用于身份验证等逻辑。
- 创建可重用的中间件函数(如
🚀 部署和 SPA 模式注意事项
- 标准 Node.js 部署支持所有服务器功能。
- SPA/静态导出模式不支持服务器端代码,需单独托管 API。
- 在 Vercel 上部署 API,支持速率限制和 Cron Jobs 等功能。
⏭️ 何时跳过创建 API 端点
- 如果数据仅用于 Next.js 应用内部,可直接使用 Server Components 获取数据,无需公开 API。
📖 总结
- Next.js 的 App Router 和 Route Handlers 提供了灵活且现代化的 API 构建方式,支持公共 API、代理服务、动态路由和中间件逻辑。
❓ 常见问题
- Server Actions:用于数据变更操作,自动生成 POST API 路由。
- TypeScript 支持:可在 Route Handlers 中使用 TypeScript。
- 身份验证最佳实践:参考 Next.js 的身份验证文档。
工具
ts-brand
使用 ts-brand
库在 TypeScript 中实现名义类型(Nominal Typing),通过类型标记(Type Branding)技术来区分相同基础类型的不同用途。文章详细说明了如何通过标记类型避免类型混淆,并提供了安装、动机、示例和 API 的详细说明。
flowgram.ai
FlowGram.AI 是一个基于节点的流程构建引擎,帮助开发者快速创建固定布局或自由连接布局的工作流。它提供了一套交互最佳实践,特别适用于具有明确输入和输出的可视化工作流。在当前 AI 热潮中,FlowGram.AI 也致力于为工作流赋能 AI 能力。
- 🛠️ FlowGram.AI 核心功能:支持固定布局和自由连接布局模式,适合可视化工作流开发。
- 🤖 AI 赋能:专注于将 AI 能力融入工作流,提升智能化水平。
- 📚 文档资源:提供官方文档和贡献指南,方便开发者快速上手。
- 📦 核心包:包括应用创建器(@flowgram.ai/create-app)、固定布局编辑器(@flowgram.ai/fixed-layout-editor)和自由布局编辑器(@flowgram.ai/free-layout-editor)。
- 🎮 示例展示:固定布局支持节点拖拽和复合节点(如分支和循环),自由布局支持节点自由放置和连接。
- 🚀 快速开始:通过命令行工具快速创建和选择示例项目,支持全功能或基础用法。
- 🔨 开发环境:需要安装 Node.js 18+,使用 pnpm 和 Rush 管理依赖,支持文档和示例项目的本地运行。
eslint-plugin-readable-tailwind
一个 ESLint 插件,能够自动将较长的 tailwind 类字符串分成多行,从而提升代码的可读性。
Node Modules Inspector
可视化你的 node_modules,查看依赖关系等等
nanobrowser
一款开源的 Chrome 扩展,专为 AI 驱动的网页自动化设计。用户可以通过自己的大语言模型 API 密钥来运行多代理工作流程,是 OpenAI Operator 的一个替代选择。
search-input-query
搜索输入查询的解析器与 React 组件
paperless-ai
这是一个为 Paperless-ngx 提供的自动文档分析工具,它利用 OpenAI API、Ollama、Deepseek-r1 和 Azure 等多种与 OpenAI API 兼容的服务,可以帮助您自动分析和标记文档。
CopilotKit
使用 React UI 和优雅的基础设施,打造 AI 副驾驶、AI 聊天机器人以及应用内的 AI 代理。实现 Agentic 的最后一公里 🪁
https://better-auth-ui.com/]
(better-auth)[@daveyplate/better-auth-ui 提供了一系列现成的 shadcn/ui 风格组件,帮助开发者在 Next.js 和 React 应用中快速实现认证功能,并与 better-auth 无缝集成。这些组件易于使用、高度可定制,且遵循现代最佳实践,适合各种项目需求。
Super Color Palette
一个基于 AI 的调色板生成工具,可以帮助您快速生成适合您的设计的颜色方案。
更新
Bun v1.2.5
Bun v1.2.5 版本修复了 75 个错误,增加了 69 个通过的 Node.js 测试,并带来了多项改进,包括前端开发服务器优化、CSS 模块支持、Node-API 完全重写、node:crypto 模块的性能提升等。
- 🐛 修复 75 个错误:解决了 162 个点赞的问题,提升了稳定性和兼容性。
- 🚀 Node-API 完全重写:大幅提升了与 Node.js 的兼容性,支持更多原生模块。
- ⚡ 性能优化:node:crypto 模块的 Sign、Verify、Hash 和 Hmac 操作速度显著提升。
- 🌐 前端开发服务器改进:支持 CSS 模块和 Svelte 框架,优化了 HMR(热模块替换)功能。
- 🛠️ Node.js 兼容性增强:修复了 node:net、node:timers 等模块的多个问题,提升了与 Node.js 的兼容性。
- 🔒 安全性增强:新增 Bun.CSRF.generate 和 Bun.CSRF.verify 方法,防止 CSRF 攻击。
- 🧪 测试工具改进:支持 test.failing 和 Jest 全局变量,修复了 VSCode 扩展中的测试运行问题。
- 📦 包管理优化:修复了 bun.lock 文件中的工作区覆盖问题,支持更长的包名。
- 🐳 Docker 支持:提供了 Docker 镜像,方便在容器中运行 Bun。
- 📜 TypeScript 类型定义改进:增强了 @types/bun 的类型支持,提升了开发体验。
- 🧹 内存泄漏修复:开发服务器的内存管理得到优化,资源释放更加彻底。
- 📊 SQL 操作增强:Bun.sql 支持动态列选择和 WHERE IN 子句,提升了数据库操作的灵活性。
Electron 35.0.0
Electron 35.0.0 已发布,包含 Chromium 134.0.6998.44、V8 13.5 和 Node 22.14.0 的升级。此次更新引入了多项新功能和改进,同时也有一些破坏性变更和弃用功能。
- 🚀 Electron 35.0.0 发布:包含 Chromium、V8 和 Node 的升级,可通过 npm 或官网下载安装。
- 🛠️ Service Worker 预加载脚本支持:新增
ses.registerPreloadScript(script)
API,支持在 Service Worker 上下文中注册预加载脚本,提升扩展支持。 - 🔄 IPC 通信改进:Service Worker 和预加载脚本之间可通过
ServiceWorkerMain.ipc
类进行 IPC 通信。 - 📦 堆栈更新:Chromium 升级至 134.0.6998.44,Node 升级至 22.14.0,V8 升级至 13.5。
- 🆕 新功能:
- 新增
ServiceWorkerMain
类,支持在主进程中与 Service Worker 交互。 - 新增
contextBridge.executeInMainWorld
,支持跨世界边界安全执行代码。 - 新增
webContents.navigationHistory.restore
API,支持恢复导航历史。 - 新增
BrowserWindow.setVibrancy
的动画参数支持。 - 支持
roundedCorners
选项,适用于 Windows 平台的BrowserWindow
。
- 新增
- ⚠️ 破坏性变更:
- 移除
PrinterInfo
对象的isDefault
和status
属性。 - 弃用
session.serviceWorkers.fromVersionID
,推荐使用getInfoFromVersionID
。 - 弃用
Session
的setPreloads
和getPreloads
,推荐使用registerPreloadScript
等新 API。 - 弃用
console-message
事件的部分参数,改为事件对象形式。 - 弃用
systemPreferences.isAeroGlassEnabled()
,无替代方案。
- 移除
- 🛑 32.x.y 版本支持结束:Electron 32.x.y 已停止支持,建议升级至更新版本。
深入探讨 TypeScript 编译器在 Go 语言移植过程中的具体细节
微软宣布开始将 TypeScript 编译器和工具移植到 Go 语言,这将显著提升编辑器启动速度、减少构建时间 10 倍,并大幅降低内存使用。以下是关键点总结:
- 🚀 TypeScript 移植到 Go:TypeScript 团队正在将现有的 JavaScript 代码库移植到 Go 语言,以提升性能。
- ⏱️ 性能提升:新的原生代码库将减少构建时间 10 倍,并大幅降低内存使用。
- 📅 时间线:TypeScript 6 将继续使用 JavaScript 代码库,TypeScript 7 将发布原生 Go 版本,预计 2025 年完成。
- 🔧 迁移内容:包括 TypeScript 编译器和语言服务器,新的语言服务器将使用语言服务器协议(LSP)。
- 🛠️ 工具支持:与 Go 代码库的交互将采用全新的方式,减少内部暴露,跨进程交互。
- 🐹 选择 Go 的原因:Go 支持循环数据结构、垃圾回收、并发处理,且与 TypeScript 的代码风格更接近。
- 🚫 为什么不选 C#:Go 更底层,支持更好的原生代码生成,且更适合 TypeScript 的功能性编码风格。
- ⚡ 速度提升来源:一半来自共享内存并发和多核利用,另一半来自原生代码的高效数据结构和无即时编译。
- 🌐 WebAssembly 支持:新的 Go 代码库将支持 WebAssembly,适用于 TypeScript Playground 等场景。
- 🧠 团队成就:TypeScript 团队在短时间内成功移植代码库,避免了重写带来的时间和一致性问题。
- 🔍 未来展望:随着类型检查速度的提升,可能需要工具来分析类型的性能并进行调试。
Chrome 在 2025 年第一季度带来了新功能:包括 CSS 文本框、Android 文件系统访问、基线更新等等!
Chrome 最新更新带来了多项新功能和改进,涵盖 CSS、文件系统访问、DOM 操作、对话框元素以及 Baseline 的广泛更新。以下是关键点总结:
- 🎨 CSS text-box 属性:通过字体度量精确控制垂直间距,新增
text-box-trim
和text-box-edge
属性,支持裁剪字体上下空白区域。 - 📂 文件系统访问 API:现已支持 Android 和 WebView,提供
showOpenFilePicker()
和showSaveFilePicker()
方法,方便读写本地文件。 - 🔄 DOM 元素移动优化:新增
moveBefore
方法,可在不重置元素状态的情况下移动 DOM 元素,保留 iframe、焦点、弹窗等状态。 - ✨ 对话框元素支持轻量关闭:
<dialog>
元素新增closedby="any"
属性,支持点击外部或按 Esc 键关闭对话框,类似 Popover API 的行为。 - 📊 Baseline 更新:
- 新增
scrollbar-gutter
和scrollbar-width
属性,优化滚动条布局。 - 新增
ruby-align
属性,支持注音文本对齐。 - 新增
Promise.try
方法,简化同步请求的错误处理。 - WebAssembly 支持垃圾回收和尾调用优化。
Array.findLast()
和findLastIndex()
方法广泛可用,支持从数组末尾查找元素。- 独立变换属性(如
translate
、rotate
)广泛可用,提供更精细的 CSS 变换控制。
- 新增
- 🌐 Interop 项目回归:2025 年将重点关注视图过渡、CSS 锚点定位和导航 API 等领域。
21st
概述总结
本文介绍了一个专为设计工程师打造的 UI 组件平台,旨在帮助设计工程师发现、分享和创建完美的 UI 组件。该平台由设计工程师构建,并针对设计工程师的需求进行了优化,支持在 IDE 中集成 AI 助手,提升开发体验。
- 🛠️ 专为设计工程师打造:平台由设计工程师构建,满足设计工程师的需求。
- 🔍 发现与分享 UI 组件:帮助用户发现和分享高质量的 UI 组件。
- 🤖 集成 AI 助手:支持在 IDE 中集成 AI 助手,提升开发效率。
- ❤️ 优化用户体验:平台设计注重用户体验,旨在打造“令人喜爱”的产品。
辰宇落雁體
概述总结
「辰宇落雁體」是由兩位高中生韋辰與作者共同開發的手寫字型,結合書寫與後製技術,將日常字跡以雋永的形式保存。字型以開源授權釋出,可自由使用、散佈與改作,並在製作過程中獲得專業團隊的指導與支持。字型推出後廣受好評,成為臺灣字型中的獨特風景。
- ✍️ 字型起源:由韋辰書寫、作者後製,將手寫字跡以雋永形式保存,象徵日常的永恆召喚。
- 📥 下載資訊:提供不等寬與等寬版本,並持續更新修正字型細節。
- 🎨 應用範例:字型適用於印刷、影像、網路等多種媒體,並可自由改作與散佈。
- 🛠️ 製作故事:從零開始學習字型製作,獲得 justfont 團隊的指導,最終完成理想中的手寫字體。
- 💡 開源授權:採用 OFL 1.1 授權,允許商用、自由散佈與改作,但保留「辰宇落雁」名稱。
- 🙏 特別感謝:感謝 justfont 團隊與曾國榕設計師的技術支持與指導,幫助完成字型製作。
- 📅 回顧與展望:字型推出 900 多天後,成為臺灣字型中的獨特風景,感謝一路支持的人們。
- ❓ 常見問題:解答關於商用、手機使用及 Word 字型疊加等問題,提供解決方案。
AI
译:构建 Agent 的新工具
OpenAI 推出了一系列新工具,旨在帮助开发者和企业构建更实用、可靠的 AI 代理系统。这些工具简化了代理逻辑、编排和交互过程,使开发者能够更轻松地构建智能代理。OpenAI 相信代理系统将很快成为工作中不可或缺的一部分,并将继续投资开发更多工具来优化生产环境中的代理系统。
- 🛠️ 新工具发布:OpenAI 推出了 Responses API,结合了 Chat Completions API 的简单性和 Assistants API 的工具使用能力,简化了智能代理的开发。
- 🌐 内置工具:包括网络搜索、文件搜索和计算机使用功能,帮助代理系统与现实世界连接,提升任务完成效率。
- 🔄 Agents SDK:用于编排单代理和多代理工作流,简化了代理之间的协作和任务交接。
- 🔍 可观察性工具:集成了追踪和检查代理工作流执行情况的功能,帮助开发者调试和优化代理性能。
- 📅 API 更新:Chat Completions API 将继续支持,而 Assistants API 计划在 2026 年中期停用,开发者将获得迁移指南。
- 🖥️ 计算机使用工具:支持自动化计算机任务,如浏览器操作和数据输入,适用于多种现实世界场景。
- 📂 文件搜索工具:改进的文件搜索功能支持多种文件类型和元数据过滤,帮助快速检索相关信息。
- 🛡️ 安全措施:新增了防止提示注入、敏感任务确认提示等安全功能,确保代理系统的安全性。
- 🚀 未来展望:OpenAI 将继续投资于智能代理平台的开发,帮助各行业提高生产力,处理复杂任务。
关于 Gemini 2.0 Flash 原生图像生成的实验研究
Google AI Studio 的 Gemini 2.0 Flash 现已支持开发者实验原生图像输出功能,结合多模态输入、增强推理和自然语言理解,能够生成图像。以下是其主要特点和应用场景:
- 🎨 多模态输出:Gemini 2.0 Flash 可以生成文本和图像结合的创作,例如生成故事并配以插图,保持角色和场景的一致性,并支持根据反馈调整风格或重述故事。
- 🖼️ 对话式图像编辑:通过自然语言对话进行多轮图像编辑,适合迭代优化图像或探索不同创意。
- 🌍 世界知识理解:利用世界知识和增强推理生成更真实的图像,例如为食谱生成详细的插图,尽管其知识广泛但不绝对完整。
- ✍️ 文本渲染:相比其他图像生成模型,Gemini 2.0 Flash 在长文本渲染方面表现更佳,适合创建广告、社交媒体帖子或邀请函等。
- 🚀 开发者支持:开发者可通过 Gemini API 使用 Gemini 2.0 Flash 进行图像生成,支持构建 AI 代理、开发视觉丰富的应用程序或进行创意头脑风暴。
其他
AI 不会吃掉你 - 少数派
Matrix 是少数派的写作社区,主张分享真实的产品体验和实用经验。文章探讨了 AI 时代的教育与营销策略,分析了情绪对决策的影响,并强调了前额叶在理性思考中的重要性。作者认为,AI 是工具而非威胁,关键在于如何保持理性思维和探索未知的能力。
- 🧠 情绪与决策:情绪会窄化认知,影响理性分析能力,尤其是在焦虑或恐惧时,容易做出冲动决策。
- 🎯 营销策略:许多营销手段通过激发情绪(如焦虑、希望)来促使消费者购买,尤其是利用「限时折扣」等紧迫感。
- 🤔 前额叶的作用:前额叶负责理性思考、规划和情绪调节,情绪高涨时其功能会被抑制,导致决策质量下降。
- 🛡️ AI 的角色:AI 是工具,帮助处理繁琐任务,但不应被视为威胁。真正的价值在于个人的认知和探索能力。
- 🧩 问题空间:探索未知和解决问题是获得价值的关键,安全感是推动探索的基础。
- � 心力耗竭:当心力耗竭时,人们会像「僵尸」一样追求快速反馈,忽视复杂问题的解决。
- 📚 哲学的重要性:哲学思维训练能帮助我们面对复杂问题,保持理性判断力,避免被消费主义和算法推荐所控制。
- 🚀 AI 的局限:AI 无法替代人类的独特价值,真正的智慧在于提出问题和面对不确定性。
为什么莫兰迪色系会显得高级?这种颜色搭配运用在服装上该如何借鉴?
概述总结
本文探讨了莫兰迪色系的来源、特点及其在艺术和时尚中的应用。莫兰迪色系以低饱和度、灰调和和谐的色彩组合著称,展现出高级、内敛、优雅的美学风格。文章详细分析了莫兰迪如何通过控制色相、纯度和明度来实现色彩和谐,并提供了将莫兰迪色系应用于服装搭配的实用建议。
🎨 莫兰迪色系的来源
源自意大利画家乔治·莫兰迪的静物画,色调偏灰,色彩纯度低,营造出宁静柔和的高级感。🌈 色彩和谐的追求
莫兰迪通过控制色相、纯度和明度,使色彩达到高度和谐,展现了“对和谐的追求”这一核心理念。🖌️ 纯度与低纯度的和谐
莫兰迪将画面纯度控制得极低,削弱了色彩的浓郁程度和色相特征,使颜色统一且柔和。🌓 明度对比的弱化
莫兰迪将明度对比控制得非常低,使画面视觉更和谐,避免了强烈的反差。👗 莫兰迪色系在服装中的应用
通过低饱和度、灰调的搭配,莫兰迪色系能轻松打造高级、时尚的服装风格,适合多种场合。🧥 服装搭配规则
包括单色搭配、接近色搭配、深浅色搭配、中性色搭配以及牛仔搭配,简单易学且效果出众。💎 莫兰迪色系的高级感
低饱和度和灰调让色彩显得克制、平衡,符合奢侈品牌的审美哲学,展现出低调的奢华感。🖼️ 莫兰迪的艺术哲学
莫兰迪通过极简的静物画表达抽象的美学追求,其作品与中国传统绘画的极简美有异曲同工之妙。🌫️ 莫兰迪色的定义
莫兰迪色并非单一颜色,而是融入灰色调的低饱和度色彩,呈现出朦胧、柔和的视觉效果。👚 莫兰迪色的穿搭技巧
从单色系到跳色搭配,莫兰迪色系能轻松提升服装的质感和高级感,适合不同肤色和风格的人群。
25 Hours AI
想知道让 AI 为你不懈工作要花多少钱吗?在你享受生活的同时,它不会有咖啡休息,也不会抱怨,只会全心投入到工作中。
2024 年,我的自信元年
2024 年,作者通过亲身经历和思考,深入探讨了自信的多维度表现及其对生活的影响。文章从体态、状态、态度、能力和正向反馈五个方面展开,分享了如何通过改变体态、调整心态、承担责任和开启正向反馈循环来提升自信。
- 🧍♂️ 自信是一种体态:挺胸抬头不仅让人看起来更自信,还能通过改善体态增强内在自信。
- 📊 自信是一种状态:自信并非恒定不变,而是一段光谱,自负和自卑是两极,自信则位于中间。
- 💪 自信是一种态度:相信自己,接纳自己的优缺点,能够真心赞美他人是自信的表现。
- 🏋️♂️ 自信是一种能力:通过承担责任、为自己和他人做决定,逐步建立自信。
- 🔄 自信是一种循环:通过正向反馈,自信的表现会带来更多自信,形成良性循环。