pngwn @pngwn.at · 25/09/2026Just released a new twinkleplop version with some significant performance improvements across both tokenisation and rendering! I finally had time to go back and explore a few other ideas. I was also slightly annoyed that I wasn't faster on all sizes. twinkleplop.pngwn.at/docs/benchma... 070 7
pngwn @pngwn.at · 22/09/2026After about a year, on and off, I am veeeery happy to release TWINKLEPLOP, a syntax highlighter of tremendous power! The speed of prism with the customisation of Shiki. twinkleplop.pngwn.at 520137 201
pngwn @pngwn.at · 08/09/2026When training is finished, ML Intern can push the results to the Hub, generate a report, or even build and deploy a demo in Spaces. 100 1
pngwn @pngwn.at · 08/09/2026From there, ML Intern can create repos, generate datasets, train models and monitor progress as jobs run. Every training run gets a Trackio dashboard so you can follow along. 100 1
pngwn @pngwn.at · 08/09/2026After you’ve chosen something to build, ML Intern estimates the compute required and recommends a budget. Once approved, that budget is enforced by the system rather than editable by the model. 100 1
pngwn @pngwn.at · 08/09/2026ML Intern will research the topic before building. It has access to @hf.co, @github.com, the web and compute, so it can ground its work in real models, datasets, papers and tools. 100 1
pngwn @pngwn.at · 08/09/2026You can start with a specific ML task or just have a conversation about what’s possible within your constraints. 100 1
pngwn @pngwn.at · 08/09/2026You shouldn’t need to be an ML expert to have an ML idea. Today we’re launching ML Intern in HuggingChat. Start with a conversation. Finish with deployable artefacts. 141 4
pngwn @pngwn.at · 09/06/2026Anthropic have abandoned all pretence and finally admitted that they are just drug dealers. 050 5
pngwn @pngwn.at · 11/04/2026can your syntax highlighter correctly highlight css-in-js-in-html-in-js? 140 4
pngwn @pngwn.at · 03/04/2026Added proper HTML parsing too. People are really into their custom components, so added support to the SvelteDOM renderer. Coming together nicely. 0230 23
pngwn @pngwn.at · 01/04/2026I created a swift renderer for my incremental parser. True incremental parsing and generation on a server with true(ish) incremental rendering on the client. 1213 21
pngwn @pngwn.at · 29/03/2026Unfortunately it doesn't handle ambiguous nodes correctly. It optimisitically handles `*hello` correctly but it never corrects it when a new paragraph or EOF is encountered. Streamdown has a similar issue. We need to render optimisitically while streaming but correct any errors when we know more. 120 2
pngwn @pngwn.at · 28/03/2026In an age of LLMs and streaming text, we need to stop trying to get markdown to play ball and restrict the syntax. I specced a stricter markdown sub(er)set several years ago and wondered if it was strict enough to support true streaming. Turns out penguin flavoured markdown was ahead of its time. 3378 37
pngwn @pngwn.at · 15/12/2025I’m in Ko Lanta, Thailand right now and though I don’t take stuff from beaches I was marvelling at the beauty of the coral. I thought they would make the most stunning toggles and closures. Then I saw this cute little hermit crab. An important reminder that we are guests here. 170 7
pngwn @pngwn.at · 04/12/2025Why is no one talking about the fact that ChatGPT got a mouth in 5.1. 110 1
pngwn @pngwn.at · 09/11/2025There is also the enormous variety of tiny spoons which I also love. 020 2
pngwn @pngwn.at · 22/10/2025The new @github.com explore page recommend the JavaScript language to me. Never heard of it. Excited to dig in. 080 8
pngwn @pngwn.at · 11/10/2025I originally created this UI for my WIP syntax highlighter but it seems to have other uses too. 020 2
pngwn @pngwn.at · 11/10/2025When writing parsers your tooling can never be good enough. But i'm pretty happy with this. 2121 12
pngwn @pngwn.at · 09/09/2025What's really cool is the CSS Highlight API is based around Range objects. These are really powerful primitives because they can capture a series of DOM elements or even parts of a text node. And you can access positional information of those ranges, enabling stuff like this. 020 2
pngwn @pngwn.at · 08/08/2025I enjoy creative use of language as much as the next person but “breastfeeding”… Courtesy of GPT-5. 340 4
pngwn @pngwn.at · 28/07/2025Turkey isn’t just cute cats begging for food. It is also cute dogs begging for food. 140 4
pngwn @pngwn.at · 27/06/2025But do you have a fetish for small cubes of metal? Love this experiment but I genuinely laughed at this. Hilarious. 120 2
pngwn @pngwn.at · 25/06/2025Gradio is about to load much faster! I spent sometime taking care of most of our major performance issues. Coming soon!! 390 9
pngwn @pngwn.at · 22/06/2025There is a little house overlooking it and I think I would like to live there. Although it is built into the cliff and looks a little bit like it could collapse into the sea at any moment. 010 1
pngwn @pngwn.at · 22/06/2025When I travel I don’t really compare places but sometimes you find somewhere that has a good shout for the best place in the world. This little cove in Kaş ticks all of the boxes. ✓ peaceful ✓ sheltered ✓ easy access to the water ✓ little rocks were I can sit ✓ weird hot/ cold mixy water 160 6
pngwn @pngwn.at · 17/06/2025I don’t like the new liquid glass look but lots of apps have much better UX in iOS 26 which is good. This, however, should be some kind of UX crime. I keep pressing the wrong ‘x’. It is infuriating . 110 1
pngwn @pngwn.at · 14/06/2025I’m increasingly convinced that where and how you eat are as important as what you eat. 050 5
pngwn @pngwn.at · 13/06/2025Met this little monster in Turkey today. I stopped to play for a bit which in puppy language means “I’m gonna bite you with my razor sharp teeth”. I made a poor decision because he then decided to change me down the street biting my ankles. 250 5
pngwn @pngwn.at · 11/06/2025As a side-effect of the @gradio-hf.bsky.social hackathon, we may have just accidentally created the largest open source collection of MCP servers. If you are curious about what can be done with MCP you should really check them out, it’s pretty wild: huggingface.co/spaces?filte... 064 6
pngwn @pngwn.at · 03/06/2025We have just launched the @gradio-hf.bsky.social hackathon but it isn’t too late to enter! The hackathon has over 1 million dollars in credits and prizes! For all of my svelte friends, there is something here for you too! One of the tracks is ‘custom components’, which are all written in svelte! 195 9
pngwn @pngwn.at · 31/05/2025I visited Rhodes old town today and at first I was slightly annoyed at the busy tourist-centred streets. But i started to reflect on what exactly it is that I think I want and why this is so bad. It made me think about my own relationship with tourism and our (or my) obsession with ‘authenticity’. 220 2
pngwn @pngwn.at · 29/05/2025Next week, we are hosting a hackathon where you can win actual money!! Build something cool and agenty with gradio to win prizes!! huggingface.co/Agents-MCP-H... 011 1
pngwn @pngwn.at · 16/05/2025I’ve been away from the sea for a few weeks and I started to get a bit worried. So I went to check on it. It’s still there and doing well. I’ll keep you updated. 160 6
pngwn @pngwn.at · 25/04/2025The image comparison tool of your dreams will be available in a @gradio-hf.bsky.social app near you very soon! Even has a fancy full screen mode for when you /really/ need to zoom in on the details! (yes it can zoom too) Are you ready?! 000 0
pngwn @pngwn.at · 19/04/2025I was visited by my cat friend to keep me company for my morning coffee. Glimmers they say. 020 2
pngwn @pngwn.at · 16/04/2025Okay! I figured out how to add rounded corners and it was more complicated that I expected. But it lives! I might need to tweak it because although it is technically correct, depending on the width of the stroke it can be a little annoying. Will see. 010 1
pngwn @pngwn.at · 14/04/2025The finest image slider in all the land will be coming to a @gradio-hf.bsky.social app near you soon! 030 3
pngwn @pngwn.at · 13/04/2025I made another critical optimisation. You can have 'open circles' with this tool but when dealing with open dashed shapes, it is critical that the path is bookended by dashes, otherwise you cant see where it ends. It adds a little complexity but the effect is worth it imo. 140 4
pngwn @pngwn.at · 13/04/2025The way it works is pretty fun. Here are the main shapes outlined. We do a bunch of circle maths to convert the values into SVG paths but critically we create individual start and end caps, place them at their 'natural' position and then apply a negative rotation (max) depending on progress. 130 3
pngwn @pngwn.at · 13/04/2025Since the animation is actually control externally (you just pass a 0-1 progress value), you can essentially 'seek', respecting any easing provided. 130 3