Max Leiter Profile Banner
Max Leiter Profile
Max Leiter

@max_leiter

Followers
2,976
Following
869
Media
149
Statuses
852

building @v0 and ai @vercel . programming and open-source. opinions mine if they're good. he/him

California, USA
Joined July 2020
Don't wanna be here? Send us removal request.
Explore trending content on Musk Viewer
@max_leiter
Max Leiter
10 months
We just shipped vision for @v0 — generate React, Tailwind, and Shadcn UI from an image! If you’re still waitlisted, reply here with a use case for v0 vision.
165
57
677
@max_leiter
Max Leiter
3 months
Use labelled if statements to avoid deeply nested blocks when performing a lot of checks
Tweet media one
53
12
341
@max_leiter
Max Leiter
14 days
Gotta love supportive teammates
Tweet media one
7
3
278
@max_leiter
Max Leiter
1 year
An AI chat bot rendering rich components using @OpenAI functions, @nextjs Server Actions, and the @vercel AI SDK. This is going to unlock so many insanely cool interfaces.
15
16
231
@max_leiter
Max Leiter
1 year
We just released a new demo of the Vercel AI SDK showing off streaming LLM responses in React Server Components - Streams and renders without additional JavaScript - Dynamic on the Edge, rendering every request - Available as <Tokens /> in the SDK
8
24
193
@max_leiter
Max Leiter
2 years
My personal site is now on the @nextjs 13 app directory with React Server Components 🎉 Pagespeed scores 📈 Loading times 📉
Tweet media one
15
9
183
@max_leiter
Max Leiter
6 months
I'm most excited for the non-chatbot use cases the AI SDK makes easier than ever. Blog post coming soon.
7
5
161
@max_leiter
Max Leiter
25 days
One of the coolest new features I'm excited for in @v0 is its ability to use third party libraries and assets
12
11
143
@max_leiter
Max Leiter
7 months
I investigated this for a week and he just... tweeted it out
@cramforce
Malte Ubl
7 months
When you `fetch` and don't read the response body (E.g. if you only care about the http status code): - Browser: It's fine - Node.js: Memory leak - Cloudflare worker: You hold on to one request-concurrency slot indefinitely and if you do it 6 times you are deadlocked How do Deno
70
100
1K
4
4
141
@max_leiter
Max Leiter
1 year
v0 will soon support generating interactive charts
6
9
138
@max_leiter
Max Leiter
2 years
A good feeling after 2 years. I'm unbelievably stoked to be returning to @Vercel on Monday ▲
Tweet media one
4
2
132
@max_leiter
Max Leiter
1 year
▲ ~/ npm i ai
Tweet media one
3
6
109
@max_leiter
Max Leiter
22 days
This small script has saved me hours of internally debating with myself what to name my branch
Tweet media one
6
6
105
@max_leiter
Max Leiter
1 month
I reached two years full-time at Vercel today. It's fun to think back to how it started, with a lucky hackernews post and a cold email to G Feeling grateful to work on such a goated team building what I love. Can't wait for everyone to try the new @v0 .
@rauchg
Guillermo Rauch
5 years
What a cool hack. 2020 is the year of the Linux D̵e̵s̵k̵t̵o̵p̵ Tablet 🤣 X11 on iOS
Tweet media one
2
11
64
6
5
86
@max_leiter
Max Leiter
2 years
I've published a light-weight SortableJS wrapper for Vue 3 after hours of messing with alternatives while working on @TheLoungeChat . The alternatives either didn't work well, were made for Vue 2, or didn't have all the features. I hope it helps someone.
9
9
85
@max_leiter
Max Leiter
3 years
Good thread, but wanted to add that in parts of the world Facebook is pretty much synonymous with the internet.
0
14
76
@max_leiter
Max Leiter
3 months
A very short post, but something I've wanted to write down somewhere for years: Maybe I'll expand on it another time, but the gist is there
10
4
72
@max_leiter
Max Leiter
10 months
Mock-ups work too! It's pretty 🤯 to draw something up and have a shadcn component ready to go. This was a really fun project to work on with @witsdev and @gkaragkiaouris . I'm excited for it to roll out soon!
Tweet media one
Tweet media two
@rauchg
Guillermo Rauch
10 months
Just tested Vision for the first time. I pasted a screenshot of . It output something so good, so fast, I doubted it was real… I dragged the text to verify it wasn't an image.
Tweet media one
49
26
598
4
8
65
@max_leiter
Max Leiter
7 months
The playground was a ton of fun to build with the team. Lots of interesting tech used to make our lives easier: RSCs, unstable_cache, Vercel KV, and (this will always blow my mind) streaming JSX and data with Server Actions.
1
1
61
@max_leiter
Max Leiter
1 year
build what people want
Tweet media one
2
0
58
@max_leiter
Max Leiter
1 year
We are sooo back.
@jaredpalmer
Jared Palmer
1 year
We kept a mood meter in the @vercel office while building
Tweet media one
20
14
389
0
0
55
@max_leiter
Max Leiter
2 years
@leeerob @floydophone @t3dotgg It’s called homebrew because it gives you time to grow and brew your own coffee every time you run it
1
1
50
@max_leiter
Max Leiter
3 months
@alvarlagerlof It probably shouldn't be
1
0
51
@max_leiter
Max Leiter
6 months
The future is now. I can't wait to see what people build
@vercel
Vercel
6 months
AI SDK 3.0 ◆ Generative UI (alpha) ◆ Assistant Tools APIs ◆ Mistral, Azure, Perplexity, and Gemini support
55
198
2K
3
2
48
@max_leiter
Max Leiter
21 days
v0 using assets in the wild
@astnai
astnai
21 days
personal card with third party by @v0
Tweet media one
0
2
65
2
2
49
@max_leiter
Max Leiter
4 months
The Vercel AI team offsite has been ongoing this week and all I can say is _a ton_ has been achieved internally. So stoked.
2
1
47
@max_leiter
Max Leiter
3 years
Inspired by @vercel 's command menu, I built a @raycastapp `vc` command for speeding up my common vercel tasks (mostly editing environment variables and viewing deployments)
Tweet media one
Tweet media two
Tweet media three
Tweet media four
3
0
45
@max_leiter
Max Leiter
1 year
I finally wrapped up a post on doing this yourself: a guide to setting up your own site with React Server Components, MDX, and the Next.js App Router
@max_leiter
Max Leiter
2 years
My personal site is now on the @nextjs 13 app directory with React Server Components 🎉 Pagespeed scores 📈 Loading times 📉
Tweet media one
15
9
183
5
1
43
@max_leiter
Max Leiter
2 years
“We’re missing domain experts that know to code, and they’re the next wave” - @kelseyhightower at #nextjsconf
Tweet media one
2
7
42
@max_leiter
Max Leiter
6 months
The Vercel AI playground now supports Claude 3 Haiku. It's exceeding my (already high) expectations.
2
4
40
@max_leiter
Max Leiter
1 year
@kentcdodds do you have a not-ts file selected in your editor?
3
0
39
@max_leiter
Max Leiter
5 months
So many side projects, not enough time. I think this is the one I'm most excited to be hacking on, but it's a ton of work to make shippable.
Tweet media one
2
0
36
@max_leiter
Max Leiter
6 months
. @shuding_ has the uncanny ability to make software that feels magical. Building with the “Shu Stack” (SWR, Server Actions, and the AI SDK) is a joy.
@threepointone
sunil pai, qed
6 months
Speaking of which: imo the best thing about vercel’s new AI RSC thing isn’t even about AI; using a generator to denote different steps of a workflow is genius. Many folks attempted it in the past, but the bits have finally assembled to make it feel magical.
8
1
64
3
0
34
@max_leiter
Max Leiter
2 years
I love using Raycast for quick tools. Today I built a small extension for jumping to pages on the Vercel style guide
1
1
33
@max_leiter
Max Leiter
7 months
Code is art }{
Tweet media one
Tweet media two
3
3
32
@max_leiter
Max Leiter
2 years
We also updated the alt text so it won't be trimmed by Twitter's 420 character limit 🎉 Add the `og:image:alt` and `twitter:image:alt` meta tags to your page if you want sites like Twitter to have alt text on your og:image
Tweet media one
@leeerob
Lee Robinson
2 years
We built our own Wordle for Next.js Conf! And we just made it even more accessible, with icons to help distinguish states for folks with visual impairments. Kudos @zlw241 / @evilrabbit_ and team!
6
11
92
1
2
14
@max_leiter
Max Leiter
8 months
I grew up on these streets
Tweet media one
3
0
26
@max_leiter
Max Leiter
13 days
kebab-case for files snake_case for everything else maybe upper snake case for some constants you're welcome
@steventey
Steven Tey
13 days
◆ kebab-case for file names ◆ PascalCase for component names ◆ camelCase for functions/attribute names ◆ UPPER_CASE for constants Who else does this too??
154
187
2K
3
0
24
@max_leiter
Max Leiter
2 years
Coder in my 20s. I have better things to do than work for a dysfunctional social media platform run by Musk.
@pmarca
Marc Andreessen 🇺🇸
2 years
If I were a coder in my 20s again, I know exactly where I would go work right now. What an incredible moment.
1K
1K
30K
3
0
22
@max_leiter
Max Leiter
1 year
Drift has been nominated for Fun Side Project of the Year at @ReactSummit . Thankful for all the contributors and stars even though it feels like it’ll always be in beta 🙏
5
2
20
@max_leiter
Max Leiter
1 year
and we've got a lot more on the way 🚀
@vercel
Vercel
1 year
Vercel AI SDK 2.2: ◆ OpenAI SDK v4 integration ◆ Support for Nuxt & Solid.js ◆ OpenAI Functions (Experimental) ◆ Cohere and Replicate streaming helpers ◆ Prompt builders for LLaMA 2, Open Assistant, and Anthropic ▲ ~/ npm i ai
Tweet media one
12
82
527
1
1
20
@max_leiter
Max Leiter
2 years
the glow-up
Tweet media one
Tweet media two
3
0
20
@max_leiter
Max Leiter
1 year
We weren't cool with just rendering markdown. Next we'll be finalizing the API design and implementing it in the AI SDK.
@jaredpalmer
Jared Palmer
1 year
Playing with @OpenAI Functions + @Pinecone + @Vercel AI SDK to build an AI chatbot w/semantic search for a Shopify store. I'll be building this live on stage (and publishing the repo) tomorrow at @Pinecone Summit. h/t @max_leiter @shuding_
15
30
253
2
0
20
@max_leiter
Max Leiter
3 months
Sounds about right.
Tweet media one
0
0
18
@max_leiter
Max Leiter
6 months
I got spotify working in Waymo. I’m never ubering again. Having to control it in the google assistant app is whack though
Tweet media one
2
1
18
@max_leiter
Max Leiter
2 years
@styfle @Uber @ChickfilA I favorited this comment on HN by an uber engineer a while ago on pretty much exactly this
0
1
17
@max_leiter
Max Leiter
3 years
It’s awesome seeing TL being used by conferences and orgs instead of proprietary choices like Discord. There’s been a few bugs/problems that have come up but thankfully the UseR team has been awesome reporting issues and working with a FOSS projects schedule.
@_useRconf
useR! 2024
3 years
The Lounge ( @TheLoungeChat ) is an IRC based chat platform. As a self-hosted, text based platform the Lounge allows a wide array of people to attend regardless of visual deficiencies or lack of an high-speed internet connection. Out of the Lounge we will start talks, events, ...
Tweet media one
2
6
15
1
4
17
@max_leiter
Max Leiter
7 months
I sincerely hope someone somewhere sees Malte's tweet and has an aha moment that saves them our struggle.
1
0
17
@max_leiter
Max Leiter
4 months
Golden Gate Claude is pretty fun
Tweet media one
1
0
16
@max_leiter
Max Leiter
1 year
You can view the page source to see the content stream in 🤯
0
0
15
@max_leiter
Max Leiter
10 months
waterfalls are beautiful this time of year
Tweet media one
0
1
15
@max_leiter
Max Leiter
3 months
So many people see something wrong with codebases or projects (failing tests, bad code, whatever) and do nothing. Sending a slack message or opening a github issue can go a long way.
1
0
15
@max_leiter
Max Leiter
2 years
I've been spending some time working on Drift now that Next 13 is out. The DX and speed of iteration is *so* much better, while the application is almost exactly the same. Some of my Next 13 notes:
Tweet media one
1
0
15
@max_leiter
Max Leiter
2 years
Just got my ticket for #nextjsconf by @vercel , claim yours! Let's make the Web. Faster.
0
1
15
@max_leiter
Max Leiter
3 months
I realized after posting this on the orange site that Vercel is what really makes this possible. Feature flags, edge config, preview deployments and great coworkers make it easy to ship.
@max_leiter
Max Leiter
3 months
A very short post, but something I've wanted to write down somewhere for years: Maybe I'll expand on it another time, but the gist is there
10
4
72
0
0
15
@max_leiter
Max Leiter
5 months
Was trying to figure out why an edge case was breaking v0's JS parser... TIL
2
0
14
@max_leiter
Max Leiter
1 year
Finally bit the bullet and spent some time last night migrating Drift to @shadcn 's ui. Basically an instant design improvement.
Tweet media one
2
0
14
@max_leiter
Max Leiter
2 years
@notdylaan @dogwithastick @Java_jigga /r/researchchemicals is a great one too
0
0
9
@max_leiter
Max Leiter
2 years
With the new Drift feature I worked on last night, you can now share files as static websites. The plan is to make it great for blogging and sharing quick links.
0
0
13
@max_leiter
Max Leiter
6 months
I love bun for being able to just run typescript files, but then I hit a bun bug and my day is immeasurably ruined
1
0
13
@max_leiter
Max Leiter
9 months
I need an eslint rule for break statements in switch statements in while loops. That is two hours I won't get back.
2
1
13
@max_leiter
Max Leiter
1 year
The AI SDK's experimental_StreamData API just shipped in v2.2.2. Give it a try and let us know how it works for your use cases!
Tweet media one
@max_leiter
Max Leiter
1 year
Just wrote-up a small RFC for streaming additional response data in the Vercel AI SDK. If you're using the AI SDK, give it a look! This is going to enable tons of interesting use cases
3
1
19
1
1
13
@max_leiter
Max Leiter
6 months
Using an llm to generate unit tests is so easy it feels like cheating. They're not amazing but certainly better than nothing.
1
0
12
@max_leiter
Max Leiter
3 months
They need to host more stuff at civic plaza
Tweet media one
2
0
12
@max_leiter
Max Leiter
8 months
About to ruin my grandfather’s day by telling him how llms are pathological liars
Tweet media one
1
0
11
@max_leiter
Max Leiter
3 years
I've thrown a hacked together version at if anyone wants to mess around
Tweet media one
@max_leiter
Max Leiter
3 years
None of the alternatives were what I wanted and I have midterms to study for so it seemed like a good time for a new project: A self-hostable Gist clone Supports auth + Markdown (githubs flavor) and LaTeX. First two images are editing, third image is viewing a published post.
Tweet media one
Tweet media two
Tweet media three
1
0
11
3
2
11
@max_leiter
Max Leiter
2 years
@polotek He knows what he’s doing. He wants customers
@sweatystartup
Nick Huber
2 years
Disclosure: In addition to being a happy customer I'm also an investor in shepherd.
8
3
77
0
0
11
@max_leiter
Max Leiter
1 year
The best part is vc bisect: binary search your deploys to find what commit introduced a problem. 99% of the time it’s my first step when handling an incident.
@sebmarkbage
Sebastian Markbåge
1 year
One thing I love about Vercel's immutable deploys is that you can workaround a bug and fix it in production, yet still have a snapshot prod version you can repro from. No more trying to restore the bug from some rebase in a local check out.
5
2
87
0
0
11
@max_leiter
Max Leiter
7 months
huge huge huge shout out to @jueungraceyun @nandafyi @shuding_ @mrncst @studio_hungry and everyone else who made this happen 🖤
0
0
10
@max_leiter
Max Leiter
8 months
If your first logging infra / log drain isn't a slack channel you shipped too late
1
0
11
@max_leiter
Max Leiter
7 months
Kudos to @mrncst for not getting annoyed (yet) with my consistent misuse of colors
@nandafyi
nanda
7 months
engineers try to design
Tweet media one
0
0
37
1
0
11
@max_leiter
Max Leiter
2 years
college ✅
0
0
11
@max_leiter
Max Leiter
3 years
None of the alternatives were what I wanted and I have midterms to study for so it seemed like a good time for a new project: A self-hostable Gist clone Supports auth + Markdown (githubs flavor) and LaTeX. First two images are editing, third image is viewing a published post.
Tweet media one
Tweet media two
Tweet media three
@emilyst
emily
3 years
What is the absolute closest thing to GitHub Gist that can be self-hosted? In terms of design and functionality. Hosts images and markdown, rendered. Creates links that can be private or public. Uses/requires registration. I have looked at dozens of pastebin-like things.
22
18
177
1
0
11
@max_leiter
Max Leiter
3 years
Drag-and-drop (text) file uploading. The react ecosystem has made this project ridiculously easy. In this case,
1
0
10
@max_leiter
Max Leiter
2 years
Tired: inaccessible wall of emojis Wired: opengraph image with alt text
@JohnPhamous
JohnPhamous
2 years
Vordle 1 2/6 Dynamic without limits. #nextjsconf Not legit but check out that OG image
2
0
24
1
0
10
@max_leiter
Max Leiter
4 months
@nexxeln fits in a tweet: function action<T extends z.ZodTypeAny, R>( schema: T, fn: (params: z.infer<T>) => R, ): (params: z.infer<T>) => R { return (params: z.infer<T>) => { const parsedParams = schema.parse(params) as z.infer<T>; return fn(parsedParams); }; }
2
0
10
@max_leiter
Max Leiter
2 years
I’ve been informed doing the crossword at the bar instead of watching the football game is disrespectful
2
0
9
@max_leiter
Max Leiter
3 years
Is venmo an awful app for everyone or just me? It constantly freezes or things don’t appear to go through but do (or sometimes don’t, which is even more frustrating)
1
0
9
@max_leiter
Max Leiter
3 months
I understand conferences / speakers not wanting some talks recorded. But not recording any feels wrong to me, that’s a lot of lost knowledge.
0
0
9
@max_leiter
Max Leiter
1 month
The world would be a better place if we all just pushed minified code and had our own linters and settings for formatting
1
0
9
@max_leiter
Max Leiter
2 years
I peaked in typeracer (and also life) today
Tweet media one
1
0
9
@max_leiter
Max Leiter
2 years
🔜
Tweet media one
1
0
9
@max_leiter
Max Leiter
2 years
Spent some time this week working on the vercel raycast extension
Tweet media one
Tweet media two
Tweet media three
0
1
8
@max_leiter
Max Leiter
1 year
I ran into an annoying bug a little while ago and made a short write-up in case anyone else encounters it TL;DR: mobile browsers try and adjust certain element's font size to ensure they're legible, but the heuristic could use some work
1
0
8
@max_leiter
Max Leiter
2 years
studying for finals? lame. adding status icons to @theloungechat ? also lame, but more fun. It's also one of our most requested features, so it'll feel extra good to merge.
Tweet media one
Tweet media two
0
1
8
@max_leiter
Max Leiter
1 year
This is the right take IMO. I think people who are saying RSC/nextjs 13 introduce more complexity across the board are just entrenched in the current state of React. RSC’s work how you expect them to if you approach them from a clean slate instead of from thinking about SPA react
@yehudafruchter
Yehuda Fruchter
1 year
Re-read @nextjs docs now that App is stable. What @vercel has done here is remarkable. Paradoxically, since vast majority of components can be rendered on server, u really don't even need to know much React at all anymore to build a React app! No state, no effect, no context...
2
0
58
0
0
8
@max_leiter
Max Leiter
10 months
Tests are made to be broken
0
0
8
@max_leiter
Max Leiter
2 years
you can create an empty commit to push upstream with `git commit --allow-empty -m "<msg>"` brought to you by someone who's dealt with accidentally merged 1-line changes too many times
2
0
7
@max_leiter
Max Leiter
3 months
Trying things
Tweet media one
1
1
7
@max_leiter
Max Leiter
2 years
It was a lot of fun working on an accessible Wordle. The NYT game (still!) lacks the most basic screen reader support. Also, John’s the 🐐
@JohnPhamous
JohnPhamous
2 years
We put a lot of work into making the experience accessible. We're not experts by any stretch so would love to hear feedback on how we can make it better (screen readers, keyboard, and other #a11y tools)! A detailed writeup on what we did coming soon!
2
9
90
0
0
7
@max_leiter
Max Leiter
3 years
brb becoming a technology influencer
Tweet media one
0
0
7
@max_leiter
Max Leiter
2 years
Good way to celebrate 22
Tweet media one
0
0
7
@max_leiter
Max Leiter
7 months
something i know but have been bitten by way too many times: if you're using react cache(), be sure you aren't creating objects/arrays inline. it caches by reference so cache(myFunction({ slug })) will not work, as { slug } will create a new object
0
0
6
@max_leiter
Max Leiter
2 years
There are two threading and naming hard things in computer science
0
0
5