The best Hacker News stories from Show from the past day
Latest posts:
Show HN: Whirlwind – Async concurrent hashmap for Rust
Hey HN, this is Will and David from Fortress (<a href="https://news.ycombinator.com/item?id=41426998">https://news.ycombinator.com/item?id=41426998</a>).<p>We use a lot of async Rust internally, and created this library out of a need for an async-aware concurrent hashmap since there weren’t many available in the Rust ecosystem.<p>Whirlwind is a sharded HashMap with a fully asynchronous API. Just as dashmap is a replacement for std::sync::RwLock<HashMap>, whirlwind aims to be a replacement for tokio::sync::RwLock<HashMap>. It has a similar design and performance characteristics to dashmap, but seems to perform better in read-heavy workloads with tokio's green threading.<p>Benchmarks are in the readme! We used an asyncified version of dashmap's benchmark suite. The project is in a pretty early stage and I'm sure there are flaws, but I'm pretty happy with the performance.<p>There is some unsafe involved, but we run Miri in ci to (hopefully) catch undefined behavior well before it's in an actual release.<p>We'd appreciate any feedback! Thanks in advance :)
Show HN: Whirlwind – Async concurrent hashmap for Rust
Hey HN, this is Will and David from Fortress (<a href="https://news.ycombinator.com/item?id=41426998">https://news.ycombinator.com/item?id=41426998</a>).<p>We use a lot of async Rust internally, and created this library out of a need for an async-aware concurrent hashmap since there weren’t many available in the Rust ecosystem.<p>Whirlwind is a sharded HashMap with a fully asynchronous API. Just as dashmap is a replacement for std::sync::RwLock<HashMap>, whirlwind aims to be a replacement for tokio::sync::RwLock<HashMap>. It has a similar design and performance characteristics to dashmap, but seems to perform better in read-heavy workloads with tokio's green threading.<p>Benchmarks are in the readme! We used an asyncified version of dashmap's benchmark suite. The project is in a pretty early stage and I'm sure there are flaws, but I'm pretty happy with the performance.<p>There is some unsafe involved, but we run Miri in ci to (hopefully) catch undefined behavior well before it's in an actual release.<p>We'd appreciate any feedback! Thanks in advance :)
Show HN: IMDb SQL Best Movie Finder
I've built a static web app called IMDb SQL Best Movie Finder that lets you query a database of 1.5 million IMDb titles using SQL directly in your browser. It’s entirely client-side, so all the data processing happens locally on your machine — no server involved.
Show HN: I wrote an open-source browser alternative for Computer Use for any LLM
Hey HN,<p>I made Browser-Use, an open-source tool that lets (all Langchain supported) LLMs execute tasks directly in the browser just with function calling.<p>It allows you to build agents that interact with web elements using natural language prompts. We created a layer that simplifies website interaction for LLMs by extracting xPaths and interactive elements like buttons and input fields (and other fancy things). This enables you to design custom web automation and scraping functions without manual inspection through DevTools.<p>Hasn't this been done a lot of times?
Good question, as a general SaaS tool yes, but I think a lot of people are going to try to make their own web automation agents from scratch, so the idea is to provide groundwork/library for the hard part so that not everyone has to repeat these steps:<p>- parse html in a LLM friendly way (clickable items + screenshots)<p>- provide a nice function calls for everything inside the browser<p>- create reusable agent classes<p>What this is NOT? An all knowing AI agent that can solve all your problems.<p>The vision: create repeatable tasks on the web just by prompting your agent and not care about the hows.<p>To better showcase the power of text extraction we made a few demos such as:<p>- Applying for multiple software engineering jobs in San Francisco<p>- Opening new tabs to search for images of Albert Einstein, Oprah Winfrey, and Steve Jobs<p>- Finding the cheapest one-way flight from London to Kyrgyzstan for December 25th<p>I’d be interested in feedback on how this tool fits into your automation workflows. Try it out and let me know how it performs on your end.<p>We are Gregor & Magnus and we built this in 5 days.
Show HN: I wrote an open-source browser alternative for Computer Use for any LLM
Hey HN,<p>I made Browser-Use, an open-source tool that lets (all Langchain supported) LLMs execute tasks directly in the browser just with function calling.<p>It allows you to build agents that interact with web elements using natural language prompts. We created a layer that simplifies website interaction for LLMs by extracting xPaths and interactive elements like buttons and input fields (and other fancy things). This enables you to design custom web automation and scraping functions without manual inspection through DevTools.<p>Hasn't this been done a lot of times?
Good question, as a general SaaS tool yes, but I think a lot of people are going to try to make their own web automation agents from scratch, so the idea is to provide groundwork/library for the hard part so that not everyone has to repeat these steps:<p>- parse html in a LLM friendly way (clickable items + screenshots)<p>- provide a nice function calls for everything inside the browser<p>- create reusable agent classes<p>What this is NOT? An all knowing AI agent that can solve all your problems.<p>The vision: create repeatable tasks on the web just by prompting your agent and not care about the hows.<p>To better showcase the power of text extraction we made a few demos such as:<p>- Applying for multiple software engineering jobs in San Francisco<p>- Opening new tabs to search for images of Albert Einstein, Oprah Winfrey, and Steve Jobs<p>- Finding the cheapest one-way flight from London to Kyrgyzstan for December 25th<p>I’d be interested in feedback on how this tool fits into your automation workflows. Try it out and let me know how it performs on your end.<p>We are Gregor & Magnus and we built this in 5 days.
Show HN: Mem0 Browser Extension: Shared Memory Across ChatGPT,Claude,Perplexity
Hey HN! We're Deshraj and Taranjeet. We've been building working on a startup called Mem0, building an open-source memory layer for AI apps and agents (<a href="https://news.ycombinator.com/item?id=41447317">https://news.ycombinator.com/item?id=41447317</a>). We also kept running into our own daily frustrations with AI assistants forgetting everything between conversations. Over a weekend, we decided to hack together a Chrome extension to solve this for ourselves.<p>The problem was simple: we were constantly re-explaining our context across platforms when switching between ChatGPT, Claude, and Perplexity. Start a coding discussion in ChatGPT, switch to Claude for a different perspective, jump to Perplexity for research—you're starting from scratch each time. We thought others might find this useful too, so we're sharing it with the HN community.<p>Our solution is built on our unified memory layer that works across multiple LLMs, accessible through a simple Chrome extension. Here’s a quick demo of how it works: <a href="https://youtu.be/cByzXztn-YY" rel="nofollow">https://youtu.be/cByzXztn-YY</a><p>The key features include<p>- Cross-LLM Memory: Start a conversation in ChatGPT, then continue in Claude or Perplexity without losing your context. This makes it easy to switch between models while maintaining coherence in your interactions.<p>- Customizable Control: Our dashboard lets you manage memories directly—you can add, edit, or delete memories, ensuring that your context stays relevant and accurate across all your LLM interactions.<p>- Sync with ChatGPT Memories: If you've been using ChatGPT's memory feature, Mem0 can sync with it, creating a consistent experience across your preferred LLMs.<p>We use a hybrid data architecture that combines graph, vector, and key-value stores to manage memories. This setup enables efficient memory retrieval based on relevance, recency, and context, ensuring your interactions remain meaningful across all apps.<p>The Chrome extension is MIT licensed and available on GitHub. Currently, it uses our hosted version of Mem0 for simplicity and stability. But we plan to add support for self-hosting using the open-source version of Mem0.<p>Try it out:<p>- Extension: <a href="https://mem0.dev/extension" rel="nofollow">https://mem0.dev/extension</a>
- Source code: <a href="https://github.com/mem0ai/mem0-chrome-extension">https://github.com/mem0ai/mem0-chrome-extension</a><p>We'd love to hear any feedback and suggestions!
Show HN: SplatGallery – A Community-Driven Gallery for Gaussian Splats
I just launched SplatGallery, a platform where you can share and discover the best 3D models created with Gaussian Splatting.<p>It's a super early stage and new models are coming it fairly often.<p>Would love to get feedback from the HN community on how to improve it!
Show HN: Convert any website into a React component
Hey HN, we built a Chrome Extension (<a href="https://www.magicpatterns.com/extension">https://www.magicpatterns.com/extension</a>) that converts a snippet of any website to an isolated React component.<p>Demo video: <a href="https://youtu.be/hutUYDkyE_A" rel="nofollow">https://youtu.be/hutUYDkyE_A</a><p>How it works: 1) Iterate through each node in the selected DOM tree, 2) For each element, find any matching CSS selectors / inline styles, 3) Use window.getComputedStyle to get the deterministic values, 4) Construct JSX<p>It was pretty hard producing the minimal code necessary while maintaining the same visual look. To do this, we implemented things like abstracting out global styles, removing inherited styles, pulling out SVGs, deleting styles with no effect, and condensing styles into their shorthand properties.<p>We dive into each of those optimizations here for fun: <a href="https://www.magicpatterns.com/blog/any-website-to-react-component">https://www.magicpatterns.com/blog/any-website-to-react-comp...</a><p>One of the main reasons we cared so much about condensing down the styles was not only to make it more human-readable, but also to reduce context length for an LLM, so that you can iterate on it with AI. Our extension has a “convert” option that lets you convert the output to Tailwind, Shadcn, or Chakra UI using an LLM. You can also export to Figma.<p>We're frontend engineers and we built the extension because our core product (<a href="https://www.magicpatterns.com/">https://www.magicpatterns.com/</a>) helps software teams prototype their product ideas. And a huge pain point for users is getting their existing designs into our product, so that they can reference them to generate UIs with their existing aesthetic.<p>The extension allows you to get existing design context from any website, even localhost. Since launch, the extension has more than 3,000 users and interestingly is most popular in Japan.<p>Here's some real examples if you're curious what the final output looks like:<p>A) Hacker News Navbar - <a href="https://www.magicpatterns.com/ac9f38e4-5ef0-49e5-8b80-dbc42951a00a">https://www.magicpatterns.com/ac9f38e4-5ef0-49e5-8b80-dbc429...</a><p>B) ChatGPT Welcome Screen - <a href="https://www.magicpatterns.com/7cb3ad12-cb12-4a5b-b32b-eda04de9ec01">https://www.magicpatterns.com/7cb3ad12-cb12-4a5b-b32b-eda04d...</a><p>C) Cal.com Calendar Component — <a href="https://www.magicpatterns.com/a43bac78-134d-458d-8107-811ac7b32b1f">https://www.magicpatterns.com/a43bac78-134d-458d-8107-811ac7...</a><p>D) Stripe.com logo section - <a href="https://www.magicpatterns.com/deff1793-7a05-42fe-97f7-945976cdbc7e">https://www.magicpatterns.com/deff1793-7a05-42fe-97f7-945976...</a><p>If you have an opinion about the extension, we’re all ears! You can try it for free at: <a href="https://www.magicpatterns.com/extension">https://www.magicpatterns.com/extension</a>
Show HN: Convert any website into a React component
Hey HN, we built a Chrome Extension (<a href="https://www.magicpatterns.com/extension">https://www.magicpatterns.com/extension</a>) that converts a snippet of any website to an isolated React component.<p>Demo video: <a href="https://youtu.be/hutUYDkyE_A" rel="nofollow">https://youtu.be/hutUYDkyE_A</a><p>How it works: 1) Iterate through each node in the selected DOM tree, 2) For each element, find any matching CSS selectors / inline styles, 3) Use window.getComputedStyle to get the deterministic values, 4) Construct JSX<p>It was pretty hard producing the minimal code necessary while maintaining the same visual look. To do this, we implemented things like abstracting out global styles, removing inherited styles, pulling out SVGs, deleting styles with no effect, and condensing styles into their shorthand properties.<p>We dive into each of those optimizations here for fun: <a href="https://www.magicpatterns.com/blog/any-website-to-react-component">https://www.magicpatterns.com/blog/any-website-to-react-comp...</a><p>One of the main reasons we cared so much about condensing down the styles was not only to make it more human-readable, but also to reduce context length for an LLM, so that you can iterate on it with AI. Our extension has a “convert” option that lets you convert the output to Tailwind, Shadcn, or Chakra UI using an LLM. You can also export to Figma.<p>We're frontend engineers and we built the extension because our core product (<a href="https://www.magicpatterns.com/">https://www.magicpatterns.com/</a>) helps software teams prototype their product ideas. And a huge pain point for users is getting their existing designs into our product, so that they can reference them to generate UIs with their existing aesthetic.<p>The extension allows you to get existing design context from any website, even localhost. Since launch, the extension has more than 3,000 users and interestingly is most popular in Japan.<p>Here's some real examples if you're curious what the final output looks like:<p>A) Hacker News Navbar - <a href="https://www.magicpatterns.com/ac9f38e4-5ef0-49e5-8b80-dbc42951a00a">https://www.magicpatterns.com/ac9f38e4-5ef0-49e5-8b80-dbc429...</a><p>B) ChatGPT Welcome Screen - <a href="https://www.magicpatterns.com/7cb3ad12-cb12-4a5b-b32b-eda04de9ec01">https://www.magicpatterns.com/7cb3ad12-cb12-4a5b-b32b-eda04d...</a><p>C) Cal.com Calendar Component — <a href="https://www.magicpatterns.com/a43bac78-134d-458d-8107-811ac7b32b1f">https://www.magicpatterns.com/a43bac78-134d-458d-8107-811ac7...</a><p>D) Stripe.com logo section - <a href="https://www.magicpatterns.com/deff1793-7a05-42fe-97f7-945976cdbc7e">https://www.magicpatterns.com/deff1793-7a05-42fe-97f7-945976...</a><p>If you have an opinion about the extension, we’re all ears! You can try it for free at: <a href="https://www.magicpatterns.com/extension">https://www.magicpatterns.com/extension</a>
Show HN: Convert any website into a React component
Hey HN, we built a Chrome Extension (<a href="https://www.magicpatterns.com/extension">https://www.magicpatterns.com/extension</a>) that converts a snippet of any website to an isolated React component.<p>Demo video: <a href="https://youtu.be/hutUYDkyE_A" rel="nofollow">https://youtu.be/hutUYDkyE_A</a><p>How it works: 1) Iterate through each node in the selected DOM tree, 2) For each element, find any matching CSS selectors / inline styles, 3) Use window.getComputedStyle to get the deterministic values, 4) Construct JSX<p>It was pretty hard producing the minimal code necessary while maintaining the same visual look. To do this, we implemented things like abstracting out global styles, removing inherited styles, pulling out SVGs, deleting styles with no effect, and condensing styles into their shorthand properties.<p>We dive into each of those optimizations here for fun: <a href="https://www.magicpatterns.com/blog/any-website-to-react-component">https://www.magicpatterns.com/blog/any-website-to-react-comp...</a><p>One of the main reasons we cared so much about condensing down the styles was not only to make it more human-readable, but also to reduce context length for an LLM, so that you can iterate on it with AI. Our extension has a “convert” option that lets you convert the output to Tailwind, Shadcn, or Chakra UI using an LLM. You can also export to Figma.<p>We're frontend engineers and we built the extension because our core product (<a href="https://www.magicpatterns.com/">https://www.magicpatterns.com/</a>) helps software teams prototype their product ideas. And a huge pain point for users is getting their existing designs into our product, so that they can reference them to generate UIs with their existing aesthetic.<p>The extension allows you to get existing design context from any website, even localhost. Since launch, the extension has more than 3,000 users and interestingly is most popular in Japan.<p>Here's some real examples if you're curious what the final output looks like:<p>A) Hacker News Navbar - <a href="https://www.magicpatterns.com/ac9f38e4-5ef0-49e5-8b80-dbc42951a00a">https://www.magicpatterns.com/ac9f38e4-5ef0-49e5-8b80-dbc429...</a><p>B) ChatGPT Welcome Screen - <a href="https://www.magicpatterns.com/7cb3ad12-cb12-4a5b-b32b-eda04de9ec01">https://www.magicpatterns.com/7cb3ad12-cb12-4a5b-b32b-eda04d...</a><p>C) Cal.com Calendar Component — <a href="https://www.magicpatterns.com/a43bac78-134d-458d-8107-811ac7b32b1f">https://www.magicpatterns.com/a43bac78-134d-458d-8107-811ac7...</a><p>D) Stripe.com logo section - <a href="https://www.magicpatterns.com/deff1793-7a05-42fe-97f7-945976cdbc7e">https://www.magicpatterns.com/deff1793-7a05-42fe-97f7-945976...</a><p>If you have an opinion about the extension, we’re all ears! You can try it for free at: <a href="https://www.magicpatterns.com/extension">https://www.magicpatterns.com/extension</a>
Show HN: Replacicon – Create and customize app icons on macOS
Show HN: Replacicon – Create and customize app icons on macOS
Show HN: I launched a super cheap and simple to use OCR tool for macOS
1. Click capture text
2. Select an area on screen with text
3. Paste the text anywhere<p>Are there other solutions out there? Yes, the best one that I've found is Text Sniper, it $8 so I decided to learn SwiftUI and release Text Capture for $0.99. This one uses MacOS builtin Vision API under the hood so it should also improve with new macOS releases. Would love to hear your feedback!
Show HN: I launched a super cheap and simple to use OCR tool for macOS
1. Click capture text
2. Select an area on screen with text
3. Paste the text anywhere<p>Are there other solutions out there? Yes, the best one that I've found is Text Sniper, it $8 so I decided to learn SwiftUI and release Text Capture for $0.99. This one uses MacOS builtin Vision API under the hood so it should also improve with new macOS releases. Would love to hear your feedback!
Show HN: Kis.tools – A directory of tools that work
Hey HN! Tired of hitting "Sign up for free" buttons only to discover the real limitations after creating an account? Or finding a "free" tool that adds watermarks to everything? Yeah, me too.<p>I'm building kis.tools, a curated directory of tools that:
Work instantly - registration only when technically necessary, have genuine free functionality, keep interfaces clean and focused, process data locally when possible, keep promotional messages or ads minimal and unobtrusive<p>Think of it as a home for tools like Eric Meyer's Color Blender (running since 2003!) - tools that do one thing, do it well, and respect users enough to let them try before asking for anything in return.<p>Every tool is personally tested and described honestly, including limitations. No marketing fluff, just straight talk about what works and what doesn't.<p>Would love your feedback and tool suggestions, especially mobile apps - seems like every 'free' app nowadays sells its core functionality through in-app purchases.
Show HN: Tinder, but to decide what to eat
Hello HN,<p>My girlfriend and I waste too much energy to decide what to eat. Every day, we would text each other, "what do we eat tonight" messages, and go over options and many times spend too much time on deciding. I am an indie dev and created this app to solve my own problem: decide with my girlfriend what to eat for dinner.<p>Initially, I created a simple app, in which we listed all the recipes we ever prepared, and it would propose randomly three of them. We would then choose together one of them. This app[0] turned into a tinder-like app, which would propose every day a set of recipes to my girlfriend and me - we would swipe and go for the first match.<p>If have some time, give it a try and feedback is very appreciated!<p>Cheers,
Kiru<p>[0] <a href="https://apps.apple.com/us/app/meal-planner-dinner-ideas/id6451110287" rel="nofollow">https://apps.apple.com/us/app/meal-planner-dinner-ideas/id64...</a>
Show HN: Tinder, but to decide what to eat
Hello HN,<p>My girlfriend and I waste too much energy to decide what to eat. Every day, we would text each other, "what do we eat tonight" messages, and go over options and many times spend too much time on deciding. I am an indie dev and created this app to solve my own problem: decide with my girlfriend what to eat for dinner.<p>Initially, I created a simple app, in which we listed all the recipes we ever prepared, and it would propose randomly three of them. We would then choose together one of them. This app[0] turned into a tinder-like app, which would propose every day a set of recipes to my girlfriend and me - we would swipe and go for the first match.<p>If have some time, give it a try and feedback is very appreciated!<p>Cheers,
Kiru<p>[0] <a href="https://apps.apple.com/us/app/meal-planner-dinner-ideas/id6451110287" rel="nofollow">https://apps.apple.com/us/app/meal-planner-dinner-ideas/id64...</a>
Show HN: Tinder, but to decide what to eat
Hello HN,<p>My girlfriend and I waste too much energy to decide what to eat. Every day, we would text each other, "what do we eat tonight" messages, and go over options and many times spend too much time on deciding. I am an indie dev and created this app to solve my own problem: decide with my girlfriend what to eat for dinner.<p>Initially, I created a simple app, in which we listed all the recipes we ever prepared, and it would propose randomly three of them. We would then choose together one of them. This app[0] turned into a tinder-like app, which would propose every day a set of recipes to my girlfriend and me - we would swipe and go for the first match.<p>If have some time, give it a try and feedback is very appreciated!<p>Cheers,
Kiru<p>[0] <a href="https://apps.apple.com/us/app/meal-planner-dinner-ideas/id6451110287" rel="nofollow">https://apps.apple.com/us/app/meal-planner-dinner-ideas/id64...</a>
Show HN: Block Sort, a mobile/PWA puzzle game without ads
I like small puzzle games to play on my mobile, (because you can put them away easily as well). But I got really annoyed that a lot of them force feed you advertisements.<p>To counter this I made my own puzzle game, as a progressive web app. This means you can install it on your mobile or desktop as an application, and play offline.<p>After the game is offline ready, no requests should be outgoing except checking for updates of the game. So there is no tracking/reporting going on. This also means I rely on old fashion email to get feedback!<p>The game is build in React + Typescript + Vite, and is open-source at: <a href="https://github.com/matthijsgroen/block-sort">https://github.com/matthijsgroen/block-sort</a><p>Challenges:<p>- I wanted to make the game using open web standards such as HTML + CSS. The game actually features one image, the rest is done in pure CSS (the cubes, buffers and placement stacks);<p>- All animation is done through CSS animations;<p>- All levels are randomly generated, and then proven playable by a solver before a player gets the level on screen. To remove loading times for the high difficulty levels, a process was made to generate these levels offline, and the game only contains the random seeds to reproduce them (and then they are still solved by the game first before offering)<p>- The entire game is statically hosted, so there is no backend involved. This proved challenging for data transfer capabilities. The game now generates a QR Code image containing all encrypted/compressed game data, that can be loaded into another instance of the game.
Show HN: Private, in-browser, CSV-SQL query runner using SQLite-WASM
Upload CSV, and start querying, all locally without any data leaving your browser. Can handle large CSV's easily. Download query results once done. Uses sqlite-wasm binary.