Jan Nicklas
@jantimon
Followers
1K
Following
4K
Media
268
Statuses
2K
dad living in Switzerland 🇨🇠mainly working on typescript, css and compiler related frontend topics - maybe you know me from html-webpack-plugin or next-yak
Zurich, Switzerland
Joined August 2012
oh wow - one of my ideas has really landed a spot on an official presentation slide at #WWDC23 text-box-trim (previously known as leading-trim) thank you @jensimmons!
1
2
24
Noticing a trend of Vercel shipping things that lean more on easy, vs simple Svelte hyping a new one-line async blackbox that'd be 4 or 5 lines in TanStack And the latest "use workflow" magic pragma for durable workflows. Compare that to the explicit, clear api Netlify has 👇
@aarondfrancis @cramforce Our async workloads implementation take the specific await step approach for an example of doing this without string based directives. https://t.co/JVc36ngDQ1
14
8
195
RE: Stacked Diffs on @GitHub After discussion w @ttaylorr_b, we can implement stacked PRs/PR groups already (in fact we kind of do with Copilot) but restacking (automatically fanning out changes from the bottom of the the stack upwards) would be wildly inefficient. To do it
72
73
1K
In the first version of oxfmt: embedded language in tagged templates: const styles = css`...`; const component = styled`...`; const query = gql`...`; const schema = graphql`...`; const template = html`...`; const docs = md`...`; https://t.co/CSKwgK8OZF
github.com
Summary Adds support for formatting embedded languages (CSS, GraphQL, HTML, Markdown) in JavaScript/TypeScript template literals using Prettier via NAPI bindings. Motivation JavaScript/TypeScript d...
10
9
168
⚓Oxlint supports plugins written in JS⚓ Developers can customize Oxlint using JS, but at Rust-speed Many ESLint plugins can run without any modification Soon a complete switch can happen <1hr https://t.co/KsrqCTwwMo
voidzero.dev
Oxlint now supports plugins written in JavaScript. Developers can customize and extend Oxlint using JavaScript, but at a speed approaching Rust, due to 'raw transfer' between Rust and JS, and other...
6
33
234
@dmwlff I don't know your use case but as I mentioned in another comment, this can be accomplished without an effect via useSyncExternalStore since an AbortSignal is by itself a tiny store. The signal its passed should be a stable reference but this does what you're looking for.
5
2
76
This same behavior can be done in far fewer lines if you have a lifetime primitive. It can be a wrapper, or it can be explicit-resource-management (Platform!) directly.
1
2
6
Custom JS plugin support for oxlint is here. Check out the blog post: https://t.co/3XPgMylu29
6
26
208
lazy exclusion tabs using CSS :has() 🤙 transition custom properties for a clip-path give one a slight delay .track { clip-path: inset(0 var(--x2) 0 var(--x1)); transition: --x1 0.2s, --x2 0.2s 0.1s; } .tabs:has(input:nth-of-type(1):checked) .track { --x1: 0; --x2: 89%; }
4
24
370
Investigating React performance directly in the Performance tab of Chrome DevTools is a game-changer. At Framer, I've used sth similar to investigate hydration perf. Seeing how React & browser scheduling interact allows you to debug issues that were previously hard to debug.
2
1
11
This is one of the best kinds of repos the ecosystem needs—every bit as invaluable as Tobias’s
sokra.github.io
ESM-CJS interop test
@hardfist_1 I just tried a rather complex rspack setup where I used reacts renderToPipeableStream directly in the rspack build and it worked - and it is blazing fast! https://t.co/3cIkUGFLEj
0
1
6
Turso is an incredible technical feat. A Rust rewrite of sqlite, with an async-first architecture, incoming support for concurrent writes, vector search, and browser / wasm support out of the box. I think this has a very good chance of being a foundational piece of
62
169
2K
The new if() selector in CSS lets you write conditional styles inline. You can also switch based on custom properties:
65
147
2K
True but worth noting that the only thing I dislike about this pattern is that it takes 2 render passes to SSR, which breaks the assumption of “hooks are stateless/no-ops on the server”. That assumption can be very useful. On a server bundle build, the compiler can optimize
reminder that it's okay to set state directly inside the function body if you know what you're doing
5
4
222
I tested this (highly experimental) optimization idea before in Next.js under a flag. Although my main goal was to drop useEffect/useLayoutEffect and then DCE and tree-shaking will get rid of dependencies only used inside them: https://t.co/kPSdQ6F7hc
github.com
The React Framework. Contribute to vercel/next.js development by creating an account on GitHub.
True but worth noting that the only thing I dislike about this pattern is that it takes 2 render passes to SSR, which breaks the assumption of “hooks are stateless/no-ops on the server”. That assumption can be very useful. On a server bundle build, the compiler can optimize
3
3
92
@sebastienlorber @stew_loren @isocroft @rickhanlonii React choosing not to pick up other frameworks innovations doesn't mean those frameworks aren't innovating either. Like Qwik/Marko's resumability is important and largely overlooked (2020). Obviously modern Signals/Fine-grained rendering are something outside of React they won't
2
3
26
just saw a demo of federated rsc running on workers by @swalker326, this is dope
Is there anyone at @Cloudflare doing federated RSC on workers? @swalker326 is running into some interesting connection closed behavior. @threepointone @dok2001 y'all know anyone?
5
13
71
Another perf boost comes in for @rolldown_rs - this time for macOs users!
1
3
86
Custom JS Plugins in Oxlint: The Prototype đź‘€
Oxlint Custom JS Plugins achieved internally. In this example, I wrote a custom JS plugin that detects debugger statements, which was then detected by this JS plugin. 🌀 I see no performance regression when running through 10k+ files. And don't forget all the core components
1
1
27