🐏 Software Shepherd @vercel 💚 Contributor to @nextjs @reactjs @nodejs @tc39 🤵 Husband & Father ✝️ Jesus lover

Array.prototype.at() is available now! Don't be the _last_ to know about it 🙂 ◦ Chrome 92 ◦ Firefox 90 ◦ Node.js 16.5.0 developer.mozilla.org/en-US/…
21
198
891
⚛️ The @reactjs team cut the dependency bloat in v16.5.0 quite a bit! 😮 react-dom@16.5.0 is 2x smaller than the previous version... react@16.5.0 is a whopping 8x smaller than the previous version! packagephobia.now.sh/result?…
9
267
797
The TypeScript 5 beta removed an unused 26.3 MB of JS making it smaller than TypeScript 3 🤯 Pro tip: you can track bloat over time using Package Phobia 💚 packagephobia.com/result?p=t…
12
57
783
136,562
TypeScript 4.4 finally figured out how to narrow types, even when the type guard is not defined inside the `if` statement! For example, this works now:
7
63
520
Did you know that HTML has a <ruby> element??? It's not what you might think... codesandbox.io/s/thirsty-rom…
10
76
464
Node.js now has a built-in API for styling text (similar to `chalk`, `picocolors`, etc) nodejs.org/docs/latest/api/u…
6
83
437
35,504
- XML is too verbose - JSON doesn’t have comments - YAML thinks Norway is False - TOML has 10 ways to represent 1 thing - INI is not standardized I think we can conclude that configuration is just bad.
YAML CAN KISS MY &SS

ALT YAML IS INSANE

21
45
291
From 75 to 800+ upvotes in less than 24 hours. We heard you and we shipped 🚀
bun install support is the most upvoted idea of all time in the @vercel github org discussions page
5
11
289
54,649
Does twitter support hex colors? Let's see... 🟩 #77b058 🟥 #dc2d44 🟦 #54aced
22
13
281
Rust passed Swift in number of GitHub Stars 🌟 Whats next, passing TypeScript? 🤯
4
36
273
If you have scripts in your package.json that call other scripts, make sure they are package agnostic by using "$npm_execpath" This ensures the package manager you used to start the script is used to run the nested scripts. This is particularly important for "postinstall"!
9
22
259
I was gone for a few weeks and arrived home to find this 🤩
11
5
227
In 2010, I bought a domain to host my web apps and get a custom email address. Back then, GApps was free for 5 users (renamed to GSuite and now Google Workspace) but today its $6/user/mo. Instead of paying $30/mo for vanity email, I now pay $1/mo with iCloud+ forwarding.
18
11
216
Today is my first day at @zeithq 🎉 🥳✨ I am excited to work with an amazing team on a marvelous product 😁 Also, it's a remote position so I can wear whatever I want (actual work attire pictured below) 😇
21
2
215
Devs like JavaScript because they get instant feedback by running the code. Devs like TypeScript because they get instant feedback by writing the code.
1
41
200
Squash is the best 🤌 - Clean history on main - Encourage smaller PRs - Don’t bother contributors to follow commit conventions - Shallow clone depth becomes useful - Revert a PR with a single commit
Merge, squash or rebase? What do you prefer and why? docs.github.com/en/github/co…
3
38
192
@shanselman explains "Hello World" in the cloud
2
28
168
Chrome 93 will support client hint headers. This means you can detect if the user prefers dark mode before executing any client-side CSS/JS. This is useful for inlined CSS sent with the initial page load. web.dev/user-preference-medi…
4
31
150
Replying to @danoliver
Another photo with the owl's head turned away 🤯
1
16
118
October recap for Next.js 🟣 300 PRs merged ☑️ 216 issues closed 📝 69 contributors 🕊️ 84 canary releases 🚀 3 stable releases #hacktoberfest
4
3
128
ZEIT Now deploys my code faster than GitHub Actions can finish unit tests⚡️
8
9
129
My work here is complete 😌 (convincing package authors that npm size matters) It started in 2017 when I bought a new computer thinking 128GB is enough for hobby Node.js but then ran out of disk space. Then I created Package Phobia and started notifying authors.
Now that 5.5 is out, I can share the package size stuff for real! 5.5.2 is the smallest TypeScript package yet. Can we go smaller? Probably not without breaking someone, at least until ESM + code splitting.
6
3
120
12,076
npmjs.com now shows package downloads per version 🎉 npmjs.com/package/next?activ…
4
13
112
Replying to @thekitze
You mean that Cmd + Shift + A is not an intuitive keystroke to mute/unmute yourself? 😆 Its like "select all" but for your mouth.
5
6
102
:feels-so-good:
7
108
8,579
TIL that npm run script can use a --if-present flag 🤯 npm run build --if-present npm test docs.npmjs.com/cli/run-scrip…
1
20
98
I agree, these stale bots are causing more problems than they solve. Just because an issue is old, doesn't mean it is invalid 🤷‍♂️
7
11
97
Goncy: Do you like snacks? Me: Is that a trick question? Yes! Goncy: Just wanted to say thanks, sending you a package with some snacks from Argentina. Me: 🤯
6
100
My 2022 GitHub stats • 3956 total contributions • 2200 commits made • 680 PRs created • 17 badges achieved • 2 new repositories
3
1
95
30,187
TFW you can’t decide what to pack
10
1
94
5 years and 2800 PRs later, still shipping hand-crafted code with incredible people at @vercel github.com/pulls?q=is%3Apr+a…
Today is my first day at @zeithq 🎉 🥳✨ I am excited to work with an amazing team on a marvelous product 😁 Also, it's a remote position so I can wear whatever I want (actual work attire pictured below) 😇
13
1
93
12,978
import { getImageProps } from 'next/image' Now stable in Next.js 14.1 🚀
We're improving @nextjs​/image to support: ◆ Using the <picture> tag ◆ Handling art direction ◆ Light/dark mode images ◆ Serving different images for HiDPI displays Landing soon on `canary` – kudos to @styfle 👏
2
4
86
14,449
Every theme selector should have 3 options: - Light - Dark - System Preference Great job @ChromiumDev for implementing this! 🌚🌝
22
5
90
Mug shot
4
87
5,182
Replying to @reactjs
> we found similar vulnerabilities in a few other popular front-end libraries. We have coordinated this release together with Vue and Preact releases fixing the same issue. It's great to see collaboration efforts, especially when it comes to security 💙
1
80
Next.js is moving to TypeScript
Next.js 8: ⬩ Serverless Next.js ⬩ Massive build-time memory usage reduction ⬩ Build-time environment configuration ⬩ Prefetch performance improvements ⬩ Smaller initial HTML size ⬩ Faster Static Export ⬩ Security improvements nextjs.org/blog/next-8
2
18
78
Ever wondered what Layout Shift is and why you don't want it? Demo: javascript.com
5
8
75
Dynamic without limits swag box arrived 😎
4
1
75
Replying to @nodejs
I am fond the the original but the new one is good too!
70
6,433
The most recent @nextjs canary was published with npm provenance 🔒 npmjs.com/package/next/v/13.…
1
2
71
17,710
Does your code use "magic" strings? Never fear, @typescript is here! typescriptlang.org/play/?noU…
4
7
68
We have something exciting in the oven
8
1
66
22,249
We have something exciting in the oven
6
65
10,831
RAMA WORKS M60-A ZEIT Limited Edition keyboard 🤩 I’ll post more in the thread as I unbox this beauty...
3
4
59
Replying to @nodejs
What's wrong with the current mascot design? ✨🐢🚀✨
1
1
58
3,976
A good question to ask yourself to avoid Layout Shift: "Is the layout being defined by the CSS [exclusively] or is it defined by the CSS plus the HTML content?"
4
3
63
Drop party from Next.js Conf just arrived ▲
3
2
64
So exciting to be here at #nextjsconf
2
2
62
This is a perfect use case for Next.js Middleware! In a few minutes, we went from an idea to reality!
If I didn't care about my spending habits, I'd buy bercel.app and have it redirect to @vercel projects because the amount of times I've mistyped it on mobile is mildly infuriating
2
4
60
The zeit/ms repo is in the top 10 most depended on GitHub 🎉 octoverse.github.com
1
12
61
GitHub is A/B testing a purple header Or it could be a bug We'll find out shortly
4
1
58
13,703
Its been one year since I joined ZEIT and I'm celebrating by giving my first public talk today 😊🗣🤯
Today is my first day at @zeithq 🎉 🥳✨ I am excited to work with an amazing team on a marvelous product 😁 Also, it's a remote position so I can wear whatever I want (actual work attire pictured below) 😇
4
2
59
"Write code for the idiot who has to maintain it a year from now because chances are, that idiot will be you" – Some Programmer
17
58
Package Phobia is tracking 4000 unique npm packages! 🎇 Maybe you recognize some of these... - webpack - rollup - preact - unfetch - axios - marked - dompurify - serve - micro - commander - kleur Add the "install size" badge to your README too! 🛡️ packagephobia.now.sh
2
11
55
Even though Base 64 isn't safe to use for URLs or Filenames, there is an alternative alphabet designed for this use case. Just swap `base64` with `base64url` 😇 rfc-editor.org/rfc/rfc4648#s…
1
52
4,602
Thanks @ChromiumDev for making fetch happen!
11
52
Lots of Vercelians contribute to Node.js @TooTallNate gyp and proxy @ArrowoodTech fetch @shuding website The list goes on…
3
56
3,855
More importantly, TS 5 is significantly faster devblogs.microsoft.com/types…
2
50
3,723
Replying to @kevin_backhouse
All of those movie plots finally make sense: Alice: I'll just reboot their security systems which should give us 30 seconds to get in and get out of the building Bob: But how can we reboot without getting into the datacenter? Alice: All I need is to get close enough for wifi
1
4
48
Smart phones have replaced: - telephone - web browser - camera - newspaper - flashlight - remote - credit card - tape measure - etc xkcd.com/2212/
2
10
48
npmjs.com will now show a TS logo when the package ships with types 🤩 Thanks to @orta for writing the RFC 👏
4
51
This is a long time coming, with a lot of different iterations and designs. Give it a try and let me known if this solves your use cases or if there is something we need to change.
We're improving @nextjs​/image to support: ◆ Using the <picture> tag ◆ Handling art direction ◆ Light/dark mode images ◆ Serving different images for HiDPI displays Landing soon on `canary` – kudos to @styfle 👏
1
2
50
18,316
Really good stuff in here... 1. Automate the addition of JSDoc types 2. bring ESLint's TypeScript support to parity with TSLint 3. Team is involved in TC39 and the Node modules group 4. Writing tailored intros for devs with different backgrounds 5. Faster builds
Curious about what we're working on for the next 6 months? We'd love to hear your thoughts about our plans! github.com/Microsoft/TypeScr…
2
14
49
Replying to @styfle @zeithq
TIL that the ZEIT Org in the top 20 most starred on GitHub 📈 That's more than Node, Go, .NET, or Rust 😮 gitstar-ranking.com/organiza…
1
9
47
Replying to @horse_js
Type Safety vs JavaScript
2
14
46
Shoutout to @alixaxel who did all the hard work of compressing Chromium to make it work well with serverless environments. Looks like a new version was just released today. Keep up the great work! github.com/alixaxel/chrome-a…
Serverless puppeteer / headless chrome (v. @styfle) One fresh browser instance per request (𝑑𝑒𝑡𝑎𝑖𝑙𝑒𝑑 𝑤𝑟𝑖𝑡𝑒𝑢𝑝 𝑐𝑜𝑚𝑖𝑛𝑔 𝑢𝑝 𝑛𝑒𝑥𝑡) github.com/zeit/now-examples… screenshot-v2.now.sh/
1
10
47
TypeScript 5.5 finally fixed one of the most common problems I run into: filtering an array to remove undefined items
2
2
50
2,916
I was today years old when I learned that nearly every car tells you which side the gas cap is on (look for a tiny arrow pointing left or right) h/t my wife (aka wyfle)
4
1
43
Me: I just reached 3000 followers! Wife: That’s amazing! There are 3000 people using Twitter?
4
44
Did you know that @github turns hex strings into a color?
1
5
44
My Christmas gift came early 🤩
3
1
48
Frontend developers should try out ZEIT Now ▲ Enjoy zero config deployments without the hassle ⚡️ 🔢No need to setup DNS 🔒No need to setup SSL 🌩️No need to setup a CDN 🤑No need for a credit card ⛴️git push to deploy zeit.co
You are a frontend developer. You need to get something in the cloud. Your tool of choice (and why) is: (Reply with reason please)
1
3
46
Replying to @becca__z @github
There should be different options for PRs besides Approve and Request Changes. Here's how it looks in VSTS:
2
4
42
Replying to @natfriedman
Maybe use orange instead of red??
1
42
I created a script to cancel previous running actions for the same branch when you push a new commit. Thanks to @mscccc for pointing out the Workflow API. Should I turn it into a generic GH Action you can add to your repo? Would you use it?
4
5
44
I've reviewed over 1000 PRs in the last 6 months ...and that's just the Vercel org 🤯
6
43
Did you about the `npm pkg` command? It lets you easily read and write package.json
4
4
44
This is some next-level dev trolling 👺😂 w3schools.dev vim.dev
3
22
41
I just migrated an old hobby project from @PlanetScale MySQL to @vercel Postgres. • npm uninstall mysql and @types/mysql • npm i @vercel/postgres • conn.query(str) → sql`str` • tinyint(1) → boolean • enabled = 1 → enabled = TRUE • ISNULL(n), n ASC → n ASC NULLS FIRST
9
1
41
12,434
Package Phobia is running on @zeithq Now 2.0 and is noticeably faster 🤩 packagephobia.now.sh
3
6
41
Once this ships, we can stop using Node Buffer and switch everything to Uint8Array 🤗
ECMAScript excitement 😉 Congrats to @bakkoting on advancing Base64 encoding & decoding to Stage 3 @TC39 🎉 This allows converting Uint8Buffers to and from Base64/Hex strings 👍 let buf = Uint8Array.fromBase64(str); let str = buf.toBase64(); github.com/tc39/proposal-arr…
3
4
37
4,681
Did you know you write a static website with .md files and deploy to @zeithq without managing dependencies? The best part is that unlike GitHub Pages, each PR will automatically deploy to a unique URL so you can see how the changes look/feel before merging to master! 🥳
1
6
40
So glad GitHub Actions changed "re-run all jobs" from two clicks to just one click 🖱️ Now all we need is "re-run failed jobs" 😄
1
39
React Components = Legos 🙂 "Stepping" on a component = adding state to a functional component 😖 React Hooks = shoes 👟
1
36
Replying to @amesimmons @Twitter
Let me choose when to refresh the home page. Don’t auto update while I’m in the middle of reading.
1
37
This won't decrease your bundle size but it will decrease your docker image size for faster builds and faster unfreezing on @zeithq
1
2
37