@KevinVanCott I played around with using web workers , but found the change too invasive. You might make a different judgement call here, but I found I was fine if filtering took a second as long as the main thread never was noticeably blocked
@KevinVanCott Suggestion: I actually just had to make a data grid on top of tanstack table which was performant well into the 100s of thousands of rows.
Instead of a web worker, I’d recommend making all map/filter/reduce operations async and yielding the main thread every few thousands rows
@tannerlinsley@giuseppegurgone The way I have TSR framed in my head:
React router has server loaders and client loaders. This is nice, but doesn’t allow for fine grained client side caching.
Tanstack router has isomorphic loaders and server functions. This allows for fine grained client caching
@tannerlinsley@giuseppegurgone It has less compile time logic. createServerFn is neat, but having transparent urls for my loaders is my preference.
Tanstack heavily leans into client side caching, but I actually love using client middleware for this in react router. Loaders are cached/invalidated as a unit.
@tan_stack - is TanStack table still supported? Looks like it's been a while since it got attention. If I'm starting a new project, is TanStack table safe to bet on for longterm support?
@BHolmesDev Laravel does readable encrypted .env files. https://t.co/YE7JxUkyD4 I build with typescript, but before I establish a pattern in the code base, I always check what laravel does. Those folks are brilliant. A GitHub action checking for drift is a great idea.
@CurtisFlaming@tannerlinsley@devagrawal09@tan_stack React router v7 and ts router seem super similar to me, though Tanstack router has a heavier emphasis on client side caching. What major pain points did tanstack router solve for you?
@rickyfm JSX is perhaps a better example for your point. I’d say that’s magic. New syntax for function calling, what exactly it gets transformed into is based on your compiler.
The transform is simple enough I can wrap my head around it most of the time. But, it’s magic all the same.
@rickyfm I like JavaScript open for extension and closed for modification. Typescript and bundlers are nice extensions to JavaScript, custom directives feel like modifications.
They’re bad like typescript enums are bad. It’s not JavaScript anymore, you’re making a new language.
@rickyfm Directives allow a user to change how their code is compiled. Amazing capability! But can we agree that random floating strings in the code is clunky and often hard to work with?
@rickyfm Directives are magic. Inscrutable incantations which appeal to some higher power (the compiler). Mere mortals ought not trouble themselves wondering how it works and writing new directives is impossible for them.
@AdamRackis Interesting! So instead of clientLoader and serverLoader, you have loader and potentially many server functions. The differentiators are that client side caching is easy and it can dedup calls to the server functions for more efficient data loading. Have I got that right?
@ryanflorence What is “malleable by an LLM” is a moving target which will be hard to evaluate.
Id much rather have code which is easy for a human to reason about and then have LLMs conform.
This strategy will win for the same reason plain text protocols are loved more than binary ones.