Writing about TypeScript and all related stuff. Building: @conar_app OSS: permix.letstri.dev, seitu.letstri.dev

Kyiv
A new journey has begun, and I am very happy that everything went almost as I planned. There was only one downtime of individual features lasting 10 minutes, and no other problems. So I look forward to seeing you at conar.app, conar.ai, or conar.dev 😁
The rebranding is finally complete and the new version 0.13 is available! 🚀 What's changed: - Connnect renamed to Conar - New domain conar.app (.ai, .dev aliases) - New logo - Added tabs feature - New design with beautiful table search
6
3
58
33,863
Switch case? If else? No. new Map
137
95
2,221
295,103
Instead of using libs for envs, you can use this simple type-safe variant and forget about envs validation.
42
94
1,930
153,167
Yes, but...
We’re making a new next-faster.vercel.app built on latest Next 16 features (𝚌𝚊𝚌𝚑𝚎𝙲𝚘𝚖𝚙𝚘𝚗𝚎𝚗𝚝𝚜). Think of it as an OSS amazon.​com The focus will be on extraordinary performance and push even further on complexity (i18n, experiments, ai search, UGC…). Even 🍪 banners. Very excited bc most demos err on being too simplistic. TODO lists ain’t it. Ignoring requirements whose voids teams fill with third-party script slot ain’t it.
35
22
984
299,724
fine, i'll build it myself
are there really no open source pg admin alternatives?????
41
15
958
164,235
If you still paying for TablePlus Just try @conar_app (it's free)
77
35
917
110,248
Seems like @GeminiApp is the winner in the "attention to details" category.
24
20
877
47,958
Is it even legal? I can fetch data in parent route and use it in any child routes. @tan_stack never ceases to amaze me
31
33
687
83,600
Next.js fast != Next.js preload everything to pretend to be fast
32
14
688
171,892
Another example that it's time to switch from Next.js to whatever Just to navigate to another page, I have to write an incredible amount of code
"Navigation feels slow in Next.js" Try cacheComponents 👇
46
21
679
102,072
TanStack Start is fast because SSR is only needed for the initial rendering, not for each navigation as in Next.js
⚡️ @tan_stack start
15
30
662
115,118
This is what a free dashboard looks like when you work with @shadcn
This is what a $3000 dashboard design looks like when you work with me
29
7
640
55,159
Suspense or skeletons? I prefer skeletons.
53
14
637
137,486
My post about Suspense has already garnered 130k views. Is it really better for you to do this?
38
21
622
212,930
When I signed up for @polar_sh, I remembered once again why I switched from @nextjs to @tan_stack Start. Tell me, is such a page load acceptable in 2025?
64
20
613
249,677
If you use a library like dayjs, date-fns, luxon, etc. Always convert dates to vanilla Date before saving. You will get rid of many problems this way.
11
24
611
53,673
Okay, I'm not native speaker but.. my squeel? my squil? why not my S–Q-L?
since people still ask us if Next.js works in Bun here’s @leerob saying Next.js works in bun
77
3
557
104,241
After updating React, I started using useEffectEvent, and now I can say that it was one of the most important innovations in React.
19
21
514
53,353
I used the new useEffectEvent hook for the first time. Finally, you can get rid of unnecessary dependencies in useEffect.
20
16
494
49,678
Just look at this performance! 1000 rows and 43 columns per table. I achieved this result using @tan_stack Table and Virtual, which was also optimized using @aidenybai's React Scan.
12
18
479
39,341
I hate @nextjs. I built a lot of logic for my new SaaS and started implementing dynamic pages BUT Next.js does not allow dynamic params in static pages! That's why I chose @tan_stack Start as the main framework, and I hope it won't let me down.
45
12
420
177,639
I have to say this. The trend of adding React Router to Next.js is the worst decision developers can make right now. Next.js is a huge server-side framework with its own routing, cache, and incredible SSR capabilities. But you installing it only for API endpoints, are you serious? You just needed to prefetch links or choose React Router/TanStack Router + Express/Hono and avoid creating your own Frankenstein monster. People sometimes come up with such ridiculous ideas that you can't believe anyone else supports it.
36
11
409
68,761
It used to be difficult to work with permissions. But with Permix, I can easily check permissions in React with just a little code. There are also quick integrations with Vue, Solid, Node.js, tRPC, oRPC, Express, Hono, Elysia, and Fastify 😎
11
26
376
47,764
Recently, I wrote about how to work with envs using Zod. Now take a look at the new version with @arktypeio. This method will be as type-safe and fast as possible.
11
17
345
34,171
Is it normal that I use so many libraries from @tan_stack and plan to add a form library also?
23
3
341
39,132
And once again why I love @tan_stack Router. I discovered an amazing feature with sharing loader data from the route in any child component TanStack ♥️
6
4
288
34,724
Lord, how cool @tan_stack DB is This code under the hood: - sync all client data stored in @ElectricSQL's PGlite - local updates through @DrizzleORM (client) - any updates are instant I can't believe we're finally on the stage at real local-first with convenient libraries 🚀
8
16
279
26,532
My integration of @tan_stack DB + @ElectricSQL's PGLite + @DrizzleORM has garnered a lot of reactions. So I released the tanstack-db-pglite package. Just a reminder, this code allows you to work with data local-first, and sync happens in the background.
16
15
269
21,854
Some time ago, I got tired of CASL and created Permix for managing permissions. It has integrations for many different frameworks and libraries and incredibly powerful types. JS, TS, React, Vue, Node.js, tRPC, oRPC, Express, Hono You may need it to restrict access to your users
12
20
261
34,708
Will @prisma and @DrizzleORM finally live in peace?
12
5
253
20,694
I've started switching from Zod to @arktypeio and it's just incredible. Not the simplest scheme, but how neat it looks now.
11
10
251
27,016
Designer built with no canvas? @shadcn you're crazy 😁
12
6
245
52,287
Replying to @soeckly
soon: export default function SignIn() { return OpenAI.call('sign in page') }
3
1
230
15,432
You just remember how much code was needed before And now using @DrizzleORM, @arktypeio, @better_auth and oRPC it looks so simple
6
13
242
19,611
The best way to store chat messages using @aisdk
9
12
215
20,653
Dude, just install @tan_stack DB
Wow I just found that You no longer need to have useQueryClient to invalidate/optimistic update in tanstack query. You can get the client from `context.client` like below
10
5
214
38,066
Someone show @aisdk to the guys at Google
require(“@google/genai”) Wow ☠️☠️
11
2
216
38,651
Replying to @legitknuckle
Users don't care, the server does
4
183
6,302
How to fix this error in @better_auth?
12
6
181
25,318
Guys, @bunjavascript and @DrizzleORM, could you stop being SO simple and convenient? 😁
7
7
185
15,968
Updated version of the @tan_stack DB + @DrizzleORM collectionOptions All data initially comes from local PGLite and then syncs with the cloud.
8
9
175
18,014
Permix v3.4 released! 🚀 Now you can create templates based on your permissions for fast applying inside middlewares! Available in Express, Fastify, Hono, tRPC, oRPC, Elysia and Node.js
5
10
170
18,857
I think I won in rerendering. I used a very tricky approach with @reactjs context and @tan_stack Store.
8
172
27,881
To track the usage of AI, you can use the new @posthog functionality And I created a wrapper for @aisdk that simplifies this as much as possible
9
3
168
14,699
After 4 months of development, connnect.app is finally here! No waiting lists. View, edit and ask AI to work with your Postgres database right now. Of course open-source @connnectapp
19
9
166
21,197
Okay, @grok, remove mustache for @ThePrimeagen
15
165
13,536
I added more hooks to use, so now more devs can be happy. Just copy the command and the hook will automatically appear in your project.
6
4
155
16,454
What's the best way to connect @tan_stack DB and @DrizzleORM?
11
3
153
20,932
I haven't written about the current stack React + Compiler TanStack Router + Start Tailwind + shadcn/ui tRPC ArkType Hono Drizzle ORM Motion Better Auth AI SDK Railway Supabase I'll change some, but they're still cool
10
7
147
22,866
AI chat persisted in IndexedDB using SQL? Yes, I combined interesting things: @aisdk @unnoqcom's oRPC, @DrizzleORM, @ElectricSQL's PGLite, @arktypeio and @reactjs to make local-first AI chats with live-updates
5
9
149
16,432
absolutely support everything he said, shadcn as a person and a library (yes, it sounds strange) revolutionized web development but for some reason, many people consider shadcn/ui to be a component library and complain that all sites are now the same ??? using the shadcn CLI, you have an incredible number of doors to different designs, components, hooks shadcn/ui, origin ui, aceternity ui, magic ui, even my hookas, and an incredible number of others it's a way to deliver/receive the code you need, not a UI framework
Some thoughts on Radix, component libraries, and shadcn/ui. We’re at that point in the web dev cycle where we’re talking about component libraries again. That’s okay. With Radix receiving fewer updates, it’s a conversation worth having. Let me start with this and I’ll bold it: The worst thing you can do right now for your production app is switch component libraries. Don’t do it. That’s not where your time or resources should go. Whatever bug you’re seeing with Radix in your app, you’ll likely run into more, including new ones, with something else. (No shade to anyone. That’s just how code works.) Yes, Radix is getting fewer updates. But Radix is still a mature, well-designed library, battle-tested and used in millions of production apps. Code doesn’t stop working just because maintainers move on. That’s the strength of open source. And what Radix does, it still does extremely well. Here’s what I’d suggest: - Already using Radix in prod? Stick with it. - Starting a new project? Consider Radix, React Aria, or Ariakit. All great choices. - Using Radix and thinking what's next? Keep an eye on Base UI (we are). It’s built by the same smart team that created Radix. They’ve done it once. Now they get to do it again and it’s looking really good (currently in beta). - Hit a bug with Radix and can’t find a fix or patch? Try testing the equivalent from Base UI. The APIs are very similar. - shadcn is built for this. Code you own. Code you can improve, rewrite or replaced. The most important thing: Use something that works for you and that you understand. Your component library should be stable. This isn’t where you want to take risks in your tech stack. Every new project (not just component libraries) goes through growing pains: bugs, API changes, missing features, incomplete docs. It’s okay to wait it out, especially for production apps. Now, where does shadcn/ui fit into all of this? shadcn (unfortunately named 😅) is not a component library. It’s an idea. It’s a combination of a few things: an open abstraction, great defaults, and a distribution system. - An open abstraction built on top of several component libraries. Radix being one of them. It’s code you’d write yourself, structured in a way that’s easier to work with. Loved by LLMs. - Carefully chosen defaults that handle the smaller things like focus states, animation styles, variants, and components that naturally fit with one another. Just enough to be a great starting point, and just enough to get out of the way when you’re ready to build your own design system. - A distribution system that makes it easy to build, generate, and share code. Built for AI. The component library is just one layer of shadcn. And if it ever comes to it, a swappable one.
7
3
149
27,894
Hookas already has more than 30 hooks! 5 of these are related to the scroll, so choose the one you need and install it via the @shadcn /ui CLI 😎
2
14
148
11,120
Kind of crazy what you need is just this to start a full AI chat @reactjs @aisdk with AI Elements oRPC @arktypeio
8
9
144
19,990
Now I know that this is a meme
1
1
138
4,728
process.env? Nah.. Just use this @arktypeio trick to use typed env variables
6
8
137
10,939
Some time ago, I complained about @reactjs Compiler, but I take back my words. Look how it optimizes my skeleton with Math.random 🤯
Sometimes I don't understand why I started using @reactjs Compiler...
7
2
137
49,151
They say "all @shadcn apps looks the same" 😁
Did I cook?
10
4
134
25,779
Jokes aside, @conar_app switched from @nextjs to @tan_stack Start Why? - Better SEO and performance - Simpler mental model for routing - Edge-ready and more compatible with our future plans - Improved observability: CPU and memory usage became more stable
7
1
116
14,750
I decided to try @arktypeio for the first time, I'm very pleased with the autocomplete, incredible job. But I still haven't found out how to convert the next Zod type.
1
112
9,013
Thanks to @imanuraglol Hookas now have a more hook: useDateFormat! You can use this hook to format dates without any libs. Just install it via shadcn/ui.
10
8
111
18,343
Permix v3 released! 🚀 - Added new integration @elysiaJS - Updated integrations for tRPC and oRPC - Updated docs Also still available integrations for React, Vue, Node.js, Express and Hono
5
9
102
11,342
Is there a component/function that is created on the server and executed on the client as is? Yes, thanks to @tan_stack Router:
Oh, shit I made this version for @tan_stack Start, and it's so convenient Source: github.com/wannabespace/cona…
6
7
97
35,288
We migrated to Bun and now the build speed has increased significantly. @Railway + @bunjavascript is the perfect combo 😎
I love @Railway, but sometimes I see a build taking 10 minutes in which there are two commands pnpm i pnpm start yes, no build command
6
1
95
8,061
In the next version of @bunjavascript you will be able to use @nodejs!
2
1
91
9,876
I don’t believe it
10
1
86
5,049
fine, we'll build it ourselves Gmail -> @mail0dotcom Google Calendar -> @analogdotnow Google Drive -> @nimbusdotcloud DBeaver -> @conar_app am I missing someone?
10
4
83
6,470
Did I cook?
18
1
80
30,743
Wanna use @arktypeio with @tan_stack form? Easy.
1
1
81
3,757
Why isn't my drizzle code working 😭
It was @DrizzleORM btw Does anyone know of a better ORM?
7
2
79
11,739
Sometimes I don't understand why I started using @reactjs Compiler...
3
79
74,160
Permix v3.2 released! 🚀 Thanks to @ruisaraiva19, we now have our 10th integration with @solid_js! Permissions shouldn't be difficult to manage.
3
7
77
7,459
Are you serious? You wrote shitty code and blame drizzle?
3
73
5,311
I have worked with lots of different tables and have created my own. But I could only make a table that was flexible and productive by using the @tan_stack libraries.
4
5
72
12,596
When I first saw @tan_stack, it was just React Query and I was a middle @vuejs dev. I didn't even think then that I would be using 6 TanStack libraries in my SaaS! Congratulations to the whole TanStack team for two BILLION downloads!
5
70
5,417
Honestly, my stack is constantly being updated because I love new technologies But at the same time, some libraries move from project to project: @reactjs @tailwindcss + @shadcn UI @tan_stack Query/Router/Start @better_auth @DrizzleORM @arktypeio oRPC ...and Number Flow 😁
9
2
66
8,004
Replying to @wzulfikar

ALT Side Eye Wtf GIF

65
8,365
Hey @better_auth, people occasionally ask me about integrating permix.letstri.dev with you, but I'm not sure what they're looking for 😁 Maybe you know?
9
1
65
5,435
Which person are you? 1 or 2?
21
4
60
11,339
6
1
65
6,178
Strange behavior of the `loader` function in @tan_stack Router. Loader is executed twice: - when hovering over the link - when navigating to the page If you set `staleTime: Infinity`, then `loader` will only work once. I think `loader` should always work once, because the data is fresh anyway. Am I wrong?
5
64
7,593
This guy is doing an amazing job with @tan_stack Router and Start
We just merged "devinxi" to main. TanStack Start is now just a Vite plugin - and that unlocks a ton of cool new stuff. If you were not yet on the alpha version, please follow the migration guide linked in the release notes github.com/TanStack/router/r…
1
62
3,456
shadcn proved that no one cares about the name
1
63
1,572
So..
My definition of rich.
5
59
3,539
Use initialized effect when you need to run an effect after initializing deps.
9
3
54
12,119
Oh, shit I made this version for @tan_stack Start, and it's so convenient Source: github.com/wannabespace/cona…
I frequently do this as well. It's great.
8
3
59
31,359
Did you know that @bunjavascript already knows how to make money?
in the next version of bun you’ll be able to use "prompt" to make LLM calls
4
59
3,900
it allows you to work with the state without pain 😁
5
58
2,153
Why I use @arktypeio? I don't even know...
3
2
58
4,431
Between React Router and @tanstack router I chose TanStack. I love route loaders and how it works with async components without nextjs or anything like that.
1
57
23,134
Did this dude seriously write a shitpost and get one and a half million views? Wtf?
Update your API response format now 🙏🙏
11
54
7,141
I'm tired of drizzle, @DrizzleORM pls fix it
1
1
56
1,698
Now I understand why zod/mini is called mini. Enum does not have the ability to be nullable.
7
1
54
12,609
How I like the @vite_js ecosystem I added the plugin and I have a Electron application I added the plugin and I have @tan_stack Router with SSR etc
1
2
53
3,672
This feature in @diabrowser just wow It feels like I'm using iOS
7
52
12,532
Looks weird? I did this to speed up the click but preserve the native behavior.
9
2
52
9,381
Which do you prefer: useQuery or useSuspenseQuery?
8
1
54
7,064
I need to learn 3D so I can do what @resend does
6
54
3,032
Replying to @ImSh4yy
You're wrong
I vibe coded a game with one prompt. Thoughts?
8
53
4,972