Sign in

Thomas G. Lopes

@thomas.rocks
1.3K followers 787 following 680 posts

🍨 Building Melt UI & Runed 🧡 Svelte ambassador 🎨 Artist & game dev on my spare time 🐱 Lover of cats

PostsRepliesMedia
Thomas G. Lopes @thomas.rocks · 19/08/2026
kinda accurate tho
 Screenshot of an AI-generated post for Thomas G. Lopes (@thomas.rocks) reading, “spent the whole evening trying to get jj to play nice with a legacy repo. it keeps reminding me why i love it. also, why is github still acting like a haunted house? 🤔” Buttons below offer “Copy post,” “Try another,” and “Add some randomness.”
010
Thomas G. Lopes @thomas.rocks · 12/08/2026
Today was fun ☀️
Total eclipsePartial eclipse
070
Thomas G. Lopes @thomas.rocks · 10/08/2026
Wee, looks great, thanks!
A readme section in Forgejo for a project called Side B. There are 3 badges underneath the title. An orange one for Svelte 5, a blue one for Tailwind 4, and a yellow one for manifest v3.

The partial description reads: A Svelte 5 browser extension that redirects Spotify tracks and albums to YouTube M...
151
Thomas G. Lopes @thomas.rocks · 24/07/2026
Vercel, are you okay? github.com/vercel/ai/is...
120
Thomas G. Lopes @thomas.rocks · 15/07/2026
What in the holy fuck MCR your show better be good
Florence is fucking killing me, 38 celsius today
110
Thomas G. Lopes @thomas.rocks · 12/06/2026
I love you ninajirachi
100
Thomas G. Lopes @thomas.rocks · 13/05/2026
This will be fun 😎
140
Thomas G. Lopes @thomas.rocks · 06/05/2026
I'm getting hyped on Svelte again. Not-too-practical-but-fun-example: synced bad apple Using `query.live` from SvelteKit's remote functions, super easy to do. Demo: sve.thomas.rocks/examples/bad...
0367
Thomas G. Lopes @thomas.rocks · 13/03/2026
Love to see Svelte 5 being picked automatically
1101
Thomas G. Lopes @thomas.rocks · 11/03/2026
god help me
151
Thomas G. Lopes @thomas.rocks · 24/01/2026
high contrast ftw
000
Thomas G. Lopes @thomas.rocks · 24/01/2026
I spent way too much time doing these simple components. Inspired by GOV.UK's design system, I'm trying to build a personal app that doesn't rely on complicated components for a change.
A dark-themed UI design system titled "Kickback" in orange. In the top right, a dropdown menu labeled "THEME" is set to "System." Under a large "Components" heading, a "BUTTONS" section displays four buttons: "PRIMARY ACTION" (orange), "SECONDARY ACTION" (purple), "DELETE ITEM" (red), and "OUTLINE STYLE" (black with white border). Below, a "DETAILS & DISCLOSURE" section features two expanded menus with orange side accents. The first is "What is Kickback?", containing the text: "Kickback is a modern music library manager built for people who care about their collection. It integrates with Beets to keep your metadata pristine." The second is "Advanced Configuration," containing the text: "You can configure your library path in the settings menu," followed by an underlined "OPEN SETTINGS" button.
260
Thomas G. Lopes @thomas.rocks · 04/01/2026
🍨 Added dialog to Melt. Really happy with how this turned out, using native dialogs while still supporting animations with cross-browser support!
1160
Thomas G. Lopes @thomas.rocks · 30/12/2025
what the fuck does this even mean
a screenshot of google meet, with a notice saying NOW WITH THE POWER OF GEMINI, and then the standard join buttons below.
040
Thomas G. Lopes @thomas.rocks · 30/12/2025
Its not *exactly* clean commits, neither force-pushing that erases history. The previous commits and comments are all still there! you can expand any of the "resubmissions" and see what the changes looked like before, and comments left. each commit acts as its own little PR.
100
Thomas G. Lopes @thomas.rocks · 28/12/2025
🎨 More drawings
A drawing of kobeni from chainsaw man, painted and outlined with black penA draft drawing of kobeni from chainsaw man, pencil with outlines in black penA draft drawing of kobeni from chainsaw man, all pencil
280
Thomas G. Lopes @thomas.rocks · 24/11/2025
🧵 In the topic of documentation websites, I completely rewrote the main website at Appwrite, including new docs and striking animations. One such example: For "init", the Appwrite launch week event, we built a customizable virtual ticket with your GitHub contributions chart.
110
Thomas G. Lopes @thomas.rocks · 24/11/2025
🧵 In Melt, I've built accessible component builders. The documentation has a ton of work put into it with beautiful animated previews, and a system for generating API reference automatically from library code
100
Thomas G. Lopes @thomas.rocks · 14/11/2025
🖼️ More drawings
Power from chainsaw man hugging denjiPanda from JJK Kris from Deltarune
120
Thomas G. Lopes @thomas.rocks · 03/11/2025
Trying to draw daily to form a habit. Here's some of my faves so far
050
Thomas G. Lopes @thomas.rocks · 30/09/2025
not the words I'd use (migrating out)
170
Thomas G. Lopes @thomas.rocks · 06/09/2025
SILKSONGGGG but also learning game dev, currently doing a breakout clone
Screenshot of a Breakout-style arcade game showing colorful brick rows (red, orange, yellow, green, light blue, blue, and purple) arranged at the top of the screen. A white paddle is positioned at the bottom, with a white ball visible on the left side. The score displays '160' and 'x6' multiplier. Some bricks show 'P' power-up indicators. The game interface has a dark purple background with 'BREAK' text repeated around the border.
150
Thomas G. Lopes @thomas.rocks · 25/06/2025
🍨 Working on a Spatial Menu component. It allows navigating through items in a list/grid with the keyboard. But, its fully responsive, meaning you don't need to define a number of columns before-hand! Available to test now.
2100
Thomas G. Lopes @thomas.rocks · 05/06/2025
Lets goooooo
Nintendo switch 2 box
4200
Thomas G. Lopes @thomas.rocks · 13/05/2025
🤗HuggingFace's playground will soon support structured output! This video is still a draft preview, and things may change.
120
Thomas G. Lopes @thomas.rocks · 09/05/2025
I love this man (go follow @bertbengtson.bsky.social!)
Web components are cringeThe business is referred as an ancient mythical dragon. Scary.
060
Thomas G. Lopes @thomas.rocks · 21/04/2025
Playdate is way cuter than it has any right to be
A playdate game console on top of a digital scale. It has a Pizza Cover. The pizza cover has text in it. It reads: Pizza; Delicious; Hot; Square. It features a man with a chefs hat doing an OK sign with his hands. There is a link to playdate.pizza. and a quote saying "you order em, we crank em out". The scale is showing 130g on its display
160
Thomas G. Lopes @thomas.rocks · 02/04/2025
🍨 Love these little toasties.
170
Thomas G. Lopes @thomas.rocks · 25/03/2025
🍨 You can now fully control floating UI in Melt's elements!
A code snippet showing the instantiation and configuration of a Popover component in JavaScript. The code defines a `popover` constant as a new `Popover` object with properties such as `forceVisible` set to `true` and a `floatingConfig` object that includes an `onCompute` function to apply styles.
0120
Thomas G. Lopes @thomas.rocks · 21/03/2025
I'm loving this pattern with Melt
1150
Thomas G. Lopes @thomas.rocks · 17/03/2025
I really wonder if someday GitHub will have consistent up-to-date data
Me highlighting a link to an issue in GitHub. The link shows its still open, but the preview for the link shows it has been closed, which is a contradiction. Thanks GitHub!
060
Thomas G. Lopes @thomas.rocks · 26/02/2025
🍨 Busy day today, we now also have 🔍 ToolTip in Melt, thanks to @autriz.bsky.social ! next.melt-ui.com/components/t...
Screenshot of a UI component labeled 'Tooltip'. The tooltip displays as a small popup with the text 'Let us cook!' appearing above a chef's hat icon. The popup is shown against a dark background. At the top of the image is a heading 'Tooltip' followed by descriptive text explaining that a tooltip is 'A popup that displays information related to an element when the element receives keyboard focus or the mouse hovers over it.' An 'Edit props' button appears at the bottom left of the demonstration area.
3100
Thomas G. Lopes @thomas.rocks · 26/02/2025
🍨 @bennymi.bsky.social has been hard at work cooking up Melt's new 🍞 Toaster component! The internals are vastly more simple now, and a long-standing bug with 'pause-all' was fixed. As always, its pretty easy to style and customize! For the preview, I went with something Sonner-like. Enjoy 🧑‍🍳
0251
Thomas G. Lopes @thomas.rocks · 24/02/2025
The new Claude Code tool is so elegant
This image shows a terminal interface for "Claude Code" in research preview mode. The terminal displays:

Cost and duration statistics at the top: Total cost of $0.0000, API duration of 0.0s, and wall duration of 2.8s
A command prompt showing "melt-ui-next-gen on feat/toaster [$]" with version information "v1.0.0 via v22.14.0 took 3s > claude"
An orange-outlined welcome message stating "Welcome to Claude Code research preview!"
Help information: "/help for help"
Current working directory (cwd): "/home/thomasg/Documents/Programming/oss/melt-ui-next-gen"

The interface is a terminal-based tool for interacting with Claude in a development environment.
250
Thomas G. Lopes @thomas.rocks · 08/02/2025
🍨 Finally shipped the file upload to Melt!
A dark-themed file upload interface showing a drop zone with a cloud icon, 'Click to upload or drag and drop' text, and a 5MB size limit. Below are listed features including drag and drop support, multiple file support, file type validation, and file size limits. An empty text file is shown as uploaded.
1251
Thomas G. Lopes @thomas.rocks · 04/02/2025
Cool, aider deleted a comment of mine on GitHub because I was suggesting a similar tool to theirs that offers a feature they don't, and others have been asking for without reply. So much for the spirit of OSS! Btw the tool is called Goose. Much better experience. github.com/block/goose
The image shows a discussion about Aider, an AI tool. User TGlide points out that Aider only suggests files to add when there are none present, but doesn't continue making suggestions later. They propose adding a mode for automatic file management. User SethTurin responds that the --browser option already provides this functionality, but notes they switched to terminal version due to other limitations. The thread ends with Aider-AI deleting a comment from TGlide.
170
Thomas G. Lopes @thomas.rocks · 22/01/2025
🍨 @bennymi.bsky.social has been a huge help with Melt! They've been porting some of the components over to Runes. You'll see some new ones popping up soon, such as Progress.
1151
Thomas G. Lopes @thomas.rocks · 16/01/2025
Uhm...
A screenshot of Spotify, specifically Metallica's page, showing they have 26 million monthly listeners there
130
Thomas G. Lopes @thomas.rocks · 20/12/2024
🃏 LETS GO BALATROOO Surprised at Elden Ring numbers, considering I mostly played on the PS5 Also damn, my GF plays a lot of Sims
A Steam gaming year in review for 2024 for user 'Ressha'. The display shows six cards with gaming statistics:
Top row:

Left card: 94 total games played (26 more than last year), including 68 new games and 2 demos
Middle card: 434 achievements unlocked (85 fewer than last year), across 55 games including 24 rare achievements
Right card: Input method breakdown - 60% played with keyboard and mouse, 37% with controller

Bottom row shows most played games:

Balatro: 11% of play time, 60 sessions played
The Sims 4: 8% of play time, 43 sessions played
ELDEN RING: 7% of play time, 70 sessions played

The layout uses a teal/turquoise background with cards featuring gradient overlays and game artwork.
020
Thomas G. Lopes @thomas.rocks · 13/12/2024
Wee!
2190
Thomas G. Lopes @thomas.rocks · 04/12/2024
yay
 Image description: A Spotify Wrapped summary featuring both a black and white band photo and listening statistics. The band photo shows four men standing against a white wall, all casually dressed. Below this are three sections: "Top Artists" listing Deftones, Slipknot, Metallica, Spiritbox, and Linkin Park; "Top Songs" listing Jaded, Ragnarok, The Void, Final-Boss-Chan, and Radiant City; and "Minutes Listened" showing 30,074 minutes. The image has a stylized red and pink gradient border effect and includes the Spotify logo and "SPOTIFY.COM/WRAPPED" at the bottom.
270
Thomas G. Lopes @thomas.rocks · 01/12/2024
Neovim command replacing every instance of "twitter" with "bluesky"
090
Thomas G. Lopes @thomas.rocks · 26/11/2024
🍨 Tree is shaping up nicely! Its almost done, and I believe the API is iron solid. Again, kudos to @abdel-17.bsky.social for putting in tons of work into it!
3340
Thomas G. Lopes @thomas.rocks · 23/11/2024
I love TS, but sometimes, good god... @mattpocock.com, TS nerds, help?
A typescript snippet. Playground in replies
450
Thomas G. Lopes @thomas.rocks · 21/11/2024
Introduce yourself with four video games
A poster of Ultrakill. V1, the robot protagonist, is holding a gun, and is covered in blood.A poster of BalatroA poster of Outer WildsA poster of Elden Ring, Shadow of the Erdtree
030
Thomas G. Lopes @thomas.rocks · 20/11/2024
🍨Daily update: help
me battling with types. TS playground link in reply
150
Thomas G. Lopes @thomas.rocks · 19/11/2024
I bet you VSCode can't do this, suckers
4 neovim windows, shown in a 2x2 grid. Each window has multiple nested neovim instances running inside the terminal mode of neovim.
240
Thomas G. Lopes @thomas.rocks · 15/11/2024
lol thomas.forsale, im almost getting it
000
Thomas G. Lopes @thomas.rocks · 15/11/2024
god why can't i have a thomas.vim domain
210
Thomas G. Lopes @thomas.rocks · 15/11/2024
A humorous meme showing two boxers, with text "ok ima fight" at the top followed by "npm run type-check". Below, one boxer says "damn" with text "type-check got hands", implying the type-checking process is formidable or difficult to deal with
030