Steve Ruiz Profile Banner
Steve Ruiz Profile
Steve Ruiz

@steveruizok

33,292
Followers
644
Following
3,945
Media
14,507
Statuses

founder @tldraw โ€ข

London
Joined March 2010
Don't wanna be here? Send us removal request.
Pinned Tweet
@steveruizok
Steve Ruiz
6 months
oh we're doing this? we're doing this
199
810
9K
@steveruizok
Steve Ruiz
1 year
I think I just invented the worst icon for team / collaboration
98
403
7K
@steveruizok
Steve Ruiz
1 year
lol @canva did me right
Tweet media one
@steveruizok
Steve Ruiz
1 year
Hey @canva thanks for using perfect-freehand! Here's my sponsorship link:
13
21
611
38
85
3K
@steveruizok
Steve Ruiz
6 months
video not sped up, jeeeez
50
235
3K
@steveruizok
Steve Ruiz
6 months
neat trick, even if a few frames late
48
152
2K
@steveruizok
Steve Ruiz
1 year
leaked photo a Tweep friend, elon's first PR
Tweet media one
85
153
2K
@steveruizok
Steve Ruiz
1 year
permit me me to flex: this is @tldraw on two devices syncing in real time. This is NOT local dev! sync is happening via a websockets server hosted on @Cloudflare workers
57
125
2K
@steveruizok
Steve Ruiz
4 years
New approach on my arrows problem. More math, less logic. These are the kinds of arrows I wanted from the start!
36
203
2K
@steveruizok
Steve Ruiz
1 year
When Iโ€™m writing code, I have a habit of making lots of โ€œlittle fixesโ€ that are unrelated to the issue Iโ€™m working on. This results in a PR which includes a lot of unrelated changes, making it harder to communicate and review.
151
76
2K
@steveruizok
Steve Ruiz
6 months
anything is possible
92
109
2K
@steveruizok
Steve Ruiz
1 year
Very happy to announce tldraw's $2.7M seed funding round, led by @Lux_Capital . ๐Ÿพ We've got big plansโ€”and a new version that goes into public beta today.
162
91
1K
@steveruizok
Steve Ruiz
4 years
Just pushed a new version of perfect-arrows, 0.3! ๐Ÿš€ - Revamped algorithm for box to box arrows - Better overlap / collision handling - Lots of edge cases fixed
10
85
1K
@steveruizok
Steve Ruiz
1 year
TIL be careful with `Array.every` and empty arrays.
Tweet media one
57
91
987
@steveruizok
Steve Ruiz
3 years
I'm taking the rest of the year off to work on @tldraw full time. ๐ŸŽ‰ Turns out there's a lot of enthusiasm for an open source hackable SVG-rendered drawing tool. My goal is to get it the entire architecture open and toot tooting by the end of the year.
Tweet media one
28
66
986
@steveruizok
Steve Ruiz
1 year
let's try @googlesheets on the canvas
18
40
911
@steveruizok
Steve Ruiz
2 years
TIL you can write overloads for arrow functions in TypeScript
Tweet media one
17
76
858
@steveruizok
Steve Ruiz
2 years
god damn @Cloudflare workers are ridiculous. this is NOT localโ€”though it might as well be since I think the server is a mile away
23
63
853
@steveruizok
Steve Ruiz
5 months
can't believe this is going into prod
Tweet media one
42
27
831
@steveruizok
Steve Ruiz
2 years
Here's a trick I've used to create the illusion of extra spacing on tight lists
14
47
815
@steveruizok
Steve Ruiz
1 year
da crispy look, box shadow + border + very minor inset shadow to help the border pop?
Tweet media one
Tweet media two
24
15
799
@steveruizok
Steve Ruiz
2 years
christ, just realized I've hit $5000/month on @github sponsors ๐Ÿ‘€
29
6
794
@steveruizok
Steve Ruiz
3 years
And we're up at ย ๐Ÿ†
Tweet media one
25
105
792
@steveruizok
Steve Ruiz
1 year
$56,722.44 in @github sponsors for 2022. ๐Ÿคฏ Thanks to everyone who chipped in, that was a big bridge year for me.
Tweet media one
12
14
780
@steveruizok
Steve Ruiz
3 years
๐Ÿš€ Just launched perfect-freehand, a minimal open source library for drawing beautiful freehand, pressure-sensitive lines. Simulates pressure on mouse / touch devices.
24
111
779
@steveruizok
Steve Ruiz
1 year
good work
3
39
765
@steveruizok
Steve Ruiz
11 months
I donโ€™t use zig and have no opinion here, however this is pretty remarkable. Do your thing mr zig
Tweet media one
20
23
750
@steveruizok
Steve Ruiz
9 months
Tailwind is nice but now I have 500 components that are just divs with classnames
57
21
716
@steveruizok
Steve Ruiz
11 months
thank you to all my GitHub sponsors
Tweet media one
12
8
714
@steveruizok
Steve Ruiz
1 year
hey @gmail for the love of god
37
26
707
@steveruizok
Steve Ruiz
3 years
This is definitely a bug but it feels kinda awesome. Somehow fast drags are turning into bends?
30
56
707
@steveruizok
Steve Ruiz
2 years
we did it
Tweet media one
21
12
672
@steveruizok
Steve Ruiz
3 years
wow, what the hell
8
66
663
@steveruizok
Steve Ruiz
1 year
i love PRs like this โ˜บ๏ธ (deleting all my tests)
Tweet media one
16
12
619
@steveruizok
Steve Ruiz
2 years
everything OK babe? youโ€™ve barely touched your React 18 features
14
42
605
@steveruizok
Steve Ruiz
2 years
oh my god, did I finally get it?
30
23
588
@steveruizok
Steve Ruiz
1 year
In Figma, start editing a vector shape, then select a node, hold Alt / Option and then hold an arrow key
8
21
568
@steveruizok
Steve Ruiz
2 months
If you're building a developer product (library, etc) IMO skip docs beyond the absolute minimum and make a bunch of examples. Like a ton of shitty examples. Every time someone asks a question, make an example as the answer.
30
41
554
@steveruizok
Steve Ruiz
1 year
dont talk to me or my colleague ever again
9
14
535
@steveruizok
Steve Ruiz
3 years
Hey, check out the app I've been working on: . It's sponsorware for now: anything $1 or more on @github sponsors will give you access.
Tweet media one
23
62
532
@steveruizok
Steve Ruiz
3 years
This week I'm bringing perfect-freehand into @excalidraw to improve the pen tool. Pressure-sensitive digital ink is on its way!
14
41
527
@steveruizok
Steve Ruiz
3 months
still insane to me that @digitalocean bought @css tricks and did nothing with it, no new content since April 2023, nada
23
37
529
@steveruizok
Steve Ruiz
6 months
cross browser too (chrome x safari)
18
29
512
@steveruizok
Steve Ruiz
6 months
damn chat gpt really coming for EVERYONEโ€™s job
4
60
512
@steveruizok
Steve Ruiz
8 months
fuck yeah tldraw
22
23
492
@steveruizok
Steve Ruiz
1 year
not to argue about frameworks, but ask yourself: if Figma can entirely render their app serverside using Ruby on Rails, do you really need react for your blog?
26
16
472
@steveruizok
Steve Ruiz
3 years
say hi to glob
5
56
473
@steveruizok
Steve Ruiz
1 year
ChatGPT's biggest flaw is that its name doesn't work as a verb. ๐Ÿฅ‰ google it / I googled it ๐Ÿฅˆ bard it / I barded it ๐Ÿฅ‡ bing it / it's bung
80
19
455
@steveruizok
Steve Ruiz
2 years
Here are some things I've learned about undo / redo
19
53
452
@steveruizok
Steve Ruiz
5 months
After the @tldraw make real thing went viral, the thing that would have helped us the most is if @OpenAI had wallets (not crypto, let me explain)
49
35
453
@steveruizok
Steve Ruiz
1 month
i dont know what you guys are complaining about, this rules
Tweet media one
19
5
449
@steveruizok
Steve Ruiz
2 years
I'm starting to raise money for a startup around @tldraw . The short-term bet is that hey, people like using the app so let's make it better. The long-term bet is that there are lots and lots of teams who want to make an app like tldraw but can't. ๐Ÿงต
12
24
448
@steveruizok
Steve Ruiz
11 months
it's hackathon day here at @tldraw
20
25
442
@steveruizok
Steve Ruiz
4 years
As a remote worker, the best advice I can give is to avoid screens, devices, or any source of blue light for about an hour before your afternoon nap.
8
53
430
@steveruizok
Steve Ruiz
3 years
My perfect-freehand Figma plugin is live!
8
44
423
@steveruizok
Steve Ruiz
6 months
good morning @tldraw office
Tweet media one
21
4
421
@steveruizok
Steve Ruiz
6 months
the window.roomDetails() API is incredible
@steveruizok
Steve Ruiz
6 months
anything is possible
92
109
2K
7
28
419
@steveruizok
Steve Ruiz
1 year
after the design crit
2
7
416
@steveruizok
Steve Ruiz
3 years
Just hit $1k/m on @github sponsors. ๐Ÿพ lets goooo
6
8
416
@steveruizok
Steve Ruiz
1 year
Overlapping submenus or not?
Tweet media one
Tweet media two
79
5
409
@steveruizok
Steve Ruiz
18 days
This ai therapist keeps telling me to do deadlifts, move to a city with low taxes for expats, and grind to $100k MMR
19
6
412
@steveruizok
Steve Ruiz
9 months
slap in the face to the ui community
35
17
407
@steveruizok
Steve Ruiz
5 years
yeah but can your design tool ๐ŸŒž?
11
42
404
@steveruizok
Steve Ruiz
2 years
I had an idea this morning for a new freehand drawing algorithm. ~900 input points to 45
8
36
407
@steveruizok
Steve Ruiz
4 years
stretchy boxes, perfect arrows
14
39
401
@steveruizok
Steve Ruiz
2 years
TIL in @code you can alt+click on a fold caret to fold everything but that block.
6
33
400
@steveruizok
Steve Ruiz
2 years
๐ŸŽ‰ I'm going to keep working on @tldraw . I'll be raising money in the new year to build a team and build an open-core platform for spatial canvas apps. DMs open if you want to discuss!
@steveruizok
Steve Ruiz
2 years
Back in July, I decided to take the rest of the year off to work on my project @tldraw . Itโ€™s been an adventure! Iโ€™ve finally decided on my next moveโ€”but as is Twitter tradition, hype now and announcement tomorrow. ๐Ÿ˜ฌ
2
0
134
26
17
392
@steveruizok
Steve Ruiz
3 years
๐Ÿš€ After much work and lots of docs, here's the core lib for tldraw, used to render React components in a canvas-style UI.
9
43
387
@steveruizok
Steve Ruiz
4 years
I've just published an NPM package called "perfect-arrows" for my arrow-drawing work. I'm starting with a point-to-point function, then moving on to box-to-box. Lots of options for tweaking the arrow, too. ๐Ÿ’˜ Demo: ๐Ÿน Repo:
7
49
369
@steveruizok
Steve Ruiz
3 years
arrows, yes
12
24
370
@steveruizok
Steve Ruiz
1 year
Hey @clickup , thanks for using perfect-freehand! You can sponsor the project here
6
16
364
@steveruizok
Steve Ruiz
3 years
Made a thing to help me design scroll effects for @createwithplay . What can you make with it?
9
25
355
@steveruizok
Steve Ruiz
6 months
Tweet media one
@jeff_weinstein
Jeff Weinstein
6 months
Yes, the AI part of @tldraw is extremely cool, but so is the years of daily engineering @steveruizok put in behind it.
15
34
598
5
8
353
@steveruizok
Steve Ruiz
2 years
new office (thx GitHub sponsors)
Tweet media one
10
1
350
@steveruizok
Steve Ruiz
1 year
๐Ÿ‘๐Ÿ‘Ž
Tweet media one
33
5
338
@steveruizok
Steve Ruiz
2 years
next level arrows are ready
5
16
334
@steveruizok
Steve Ruiz
3 years
In @figma , if you rotate a few shapes and then rotate them back, they'll end up in a different place. What's happening? ๐Ÿงต
13
27
334
@steveruizok
Steve Ruiz
3 years
Getting there
6
16
329
@steveruizok
Steve Ruiz
11 months
every now and then I still just
7
10
330
@steveruizok
Steve Ruiz
2 years
i'm at the combination @figma embed and @tldraw
8
24
325
@steveruizok
Steve Ruiz
6 months
we are so back
Tweet media one
19
4
324
@steveruizok
Steve Ruiz
4 years
Today I found a ten year old micro-app by @evanwallace with a great arrow-drawing algorithm. I worked through the code and adapted it for perfect-arrows. Really beautiful arrows! Playground here:
6
31
320
@steveruizok
Steve Ruiz
1 year
I would never in a million years create a product with a name that had a space in it, however if I did I would insist that all copy use a non breaking space. heads would be rolling rn
Tweet media one
17
9
312
@steveruizok
Steve Ruiz
2 years
minor #TypeScript breakthrough: from a union of objects, get an object type containing all properties with each property typed as a union of their different values
Tweet media one
11
21
309
@steveruizok
Steve Ruiz
1 year
insane attention to detail in @linear
Tweet media one
Tweet media two
Tweet media three
7
5
312
@steveruizok
Steve Ruiz
6 months
@soney_mathew 90% clout, 10% preventing stale tabs from overwriting local data when the same document is open in two tabs
3
7
304
@steveruizok
Steve Ruiz
11 months
sick guy over here trying to ship tldrawโ€™s developer library out of alpha with a brain full of worms
Tweet media one
7
23
302
@steveruizok
Steve Ruiz
2 years
I think I got it, omg
13
8
302
@steveruizok
Steve Ruiz
2 years
Off-screen selection hint. Never get lost again!
11
7
301
@steveruizok
Steve Ruiz
1 year
In Figma, many teams use emoji in page titles to mark a pageโ€™s status (in progress, complete, etc). Itโ€™s an example of users creating a feature for themselves in the โ€œwiggle roomโ€ provided by the applicationโ€™s other features. What do you call this? Where else have you seen it?
79
7
296
@steveruizok
Steve Ruiz
1 year
grab an arrow
9
5
296
@steveruizok
Steve Ruiz
10 days
So excited for this. A solid API for defining relationships between shapes is the last big piece of the SDK puzzle. (We hacked it for arrows, but now weโ€™re turning that into the general API)
@tldraw
tldraw
10 days
put a pin in it
22
48
960
19
16
298
@steveruizok
Steve Ruiz
1 year
1200 shape drag challenge feat. @tldraw @excalidraw @framer @MiroHQ @mural . Winner is... Mural!
19
28
293
@steveruizok
Steve Ruiz
1 year
I'd trade that ๐Ÿ˜• for a โœ… in a heartbeat @github
Tweet media one
14
4
293
@steveruizok
Steve Ruiz
2 months
local LLMs seem cool but I cannot figure out how python works on MacOS / zsh. Itโ€™s not python itโ€™s python3? We have pip but itโ€™s not in the PATH? Every command is unrecognized because nothing you install gets added to the PATH?
87
9
292
@steveruizok
Steve Ruiz
2 years
rotated cursors
12
13
290
@steveruizok
Steve Ruiz
3 years
huh, a pattern emerges
4
8
288
@steveruizok
Steve Ruiz
1 year
I like those changes though! Small improvements rule. Where do they go? Is it worth a second PR? Does this stuff never get done?
100
4
281