React
Ladle - A drop-in alternative to Storybook
Ladle是一个来自Uber的工程师的项目,他喜欢Storybook,但在他的公司里仍然看到各种性能问题:构建时间、启动时间、交互时间......。因此,他创建了一个更快的替代方案,基于Vite和ES模块,并与Component Story Format兼容,使采用更容易(demo)。
Preemptive Memoization In React Is Probably Not Evil
一篇关于对象和回调的稳定性的文章,非常有趣,而且有据可查。尽管使用useMemo看起来是一种过早的优化,但Zhenghao建议尽可能地稳定身份,至少对于lib和自定义钩子是这样。我们期待着 React-Forget和Records & Tuples的出现,它们可以大大简化我们的生活。
Remix Stacks** & **Remix v1.3
Remix CLI现在允许你用一个给定的堆栈初始化一个项目。Remix提供了3个内置栈,可以快速启动(DB、Auth、host、test...),也可以创建自己的栈(例如公司项目)。在这3个可用的堆栈中,差异主要是在主机或持久性方面,我们发现了一些共同的基础:Tailwind, TypeScript, Prettier, ESLint, Cypress, MSW, Docker, Vitest, Testing Library。
我觉得提供启动器以快速入门是件好事,但我对 "模板 "的做法褒贬不一,我更喜欢Kent之前倡导的 "company-scripts"的做法(如CRA),以减少现有项目的长期维护。
Upgrading Next.js for instant performance improvements
Vercel最近将一个演示应用程序(Virtual Reality Store)从Next.js v8升级到v12。Lydia借此机会列举了最新版本的许多改进,你只需付出最小的升级努力就能得到这些改进。对你可能错过的新功能做了一个很好的概述。
How Wix Applied Multi-threading to Node.js and Cut Thousands of SSR Pods and Money
来自Wix的反馈,解释了他们如何优化运行React服务器端渲染的平台,以满足高CPU需求。他们使用了新的Node.js API 14 worker_threads(与 child_process不同,允许内存共享),得到了非常好的结果。这篇文章更多的是关于Node.js的,但对于那些运行自我托管的React SSR管道的人来说,仍然觉得很有意义。
Shopify: Creating a React Library for Consistent Data Visualization
来自Shopify的反馈,报告其数据可视化的一致性问题。解决方案:创建Polaris Viz库,该库将很快开源。他们特别解释了使用React上下文来创建默认主题,以及通过部分覆盖来创建变体的可能性。
Idiomatic Redux: Designing the Redux Toolkit Listener Middleware
Mark Erikson对新的Redux Toolkit 1.8 Listener Middleware API的设计进行了回顾,该设计跨越了2年多的时间,进行了多次迭代。他们设法用一个相对简单的API覆盖了许多Redux-Saga/Observable的用例。我喜欢await condition(predicate) 的概念。
拓展阅读
- 📜 Nexus --- a Component Tree Visualizer for Next.js: extension VSCode
- 📜 Using SVG sprites in a React app
- 📜 Implementing advanced usePrevious hook with React useRef
- 📜 Remix - Full Context Review
- 📜 Remix vs Next.js
- 📜 Storybook Community Showcase #1
- 📖 Partydown + Gatsby: integration doc
- 📖 Dan Abramov annonced 3 new doc pages on the beta site: useReducer, useContext, createContext
- 📦 React-Runner v1: 这个现代的React-Live替代品的稳定发布,允许创建一个具有实时预览功能的代码编辑器。与CodeSandbox Sandpack类似,但没有任何iframe,直接在浏览器中运行。
- 📦 React-Spline: 来运行用Spline工具创建的3D体验。不是100%确定这是什么,但它看起来像是Blender + React-Three-Fiber的一个可能的替代方案?
- 📦 Remix-ETag
- 📦 MDX v2.1
React-Native
- 📦 React-Native v0.68.0-rc.3:计划在下周推出稳定的0.68版,包括启用Fabric和新架构的开关🤯。
- 📜 Using Storybook and MSW in React Native
- 🧑🎨 React-Native-Skia: shadows
- 🎙️ RNR 229 - Building an Expo App for Mobile and Web with Josh Justice
- 😢 React-Native Weekly - The End
- 📦 React-Native-Quick-SQLite: async callbacks support
- 📦 React-Native-Elements v4.0.0-rc.0
Other
CodeSandbox重写,为任何规模的项目提供新的云开发体验,与IDE集成(现在是VSCode,将来会有更多),甚至支持iPad。不错的贡献工作流程,对于快速合作或代码评审似乎很方便,而无需切换你的本地git分支。
拓展阅读
- Prettier 2.6: new
singleAttributePerLineoption, TS 4.6 support... - Deno 1.20: significant perf improvements, TS 4.6 support, V8 upgrade...
- welcome2web3.com: ironic site, demo the web3 UX 😂
- Lamina: "Tailwind for shaders"
- Vercel Deploy: Chrome Extension
- Boa v0.14
- Parcel CSS v1.7
- Wave.js 2.0
- Your SSR is slow & your devtools are lying to you
- Debugging TypeScript using Replay Node
- OpenSSL security releases require Node.js security releases
- Conquering JavaScript Hydration
- experiences. Web. frameworks. future. me.
- Motion Developer Tools
- How to write fast code
- Vitest inline assertions? 🤔
- hidden="until-found"
- Alert: peacenotwar module sabotages npm developers in the node-ipc package to protest the invasion of Ukraine
- Protestware is trending in open source: 4 different types and their impact
- Packages with high download numbers that nobody wanted to install
- CSS-Tricks is joining DigitalOcean!
- In Defense of Sass
- Gotchas with Git and the GitHub API
- Retro-specifying fetch/performance
- Making WebViews work for the Web
- Why I Prefer Makefiles Over package.json Scripts
