The best Hacker News stories from Show from the past day
Latest posts:
Show HN: @smoores/epub, a JavaScript library for working with EPUB publications
Howdy! I've just written a blog post about this, and I figured I would share it here: <a href="https://smoores.dev/post/announcing_smoores_epub/" rel="nofollow">https://smoores.dev/post/announcing_smoores_epub/</a>. As I've been working on Storyteller[1], I've been developing a library for working with EPUB files, since that's a large amount of the work that Storyteller does. After a friend asked for advice on creating EPUB books in Node.js, I decided to publish Storyteller's EPUB library as a standalone NPM package. I really love the EPUB spec, and I think the Node.js developer community deserves an actively maintained library for working with it!<p>[1]: <a href="https://smoores.gitlab.io/storyteller" rel="nofollow">https://smoores.gitlab.io/storyteller</a>
Show HN: @smoores/epub, a JavaScript library for working with EPUB publications
Howdy! I've just written a blog post about this, and I figured I would share it here: <a href="https://smoores.dev/post/announcing_smoores_epub/" rel="nofollow">https://smoores.dev/post/announcing_smoores_epub/</a>. As I've been working on Storyteller[1], I've been developing a library for working with EPUB files, since that's a large amount of the work that Storyteller does. After a friend asked for advice on creating EPUB books in Node.js, I decided to publish Storyteller's EPUB library as a standalone NPM package. I really love the EPUB spec, and I think the Node.js developer community deserves an actively maintained library for working with it!<p>[1]: <a href="https://smoores.gitlab.io/storyteller" rel="nofollow">https://smoores.gitlab.io/storyteller</a>
Show HN: @smoores/epub, a JavaScript library for working with EPUB publications
Howdy! I've just written a blog post about this, and I figured I would share it here: <a href="https://smoores.dev/post/announcing_smoores_epub/" rel="nofollow">https://smoores.dev/post/announcing_smoores_epub/</a>. As I've been working on Storyteller[1], I've been developing a library for working with EPUB files, since that's a large amount of the work that Storyteller does. After a friend asked for advice on creating EPUB books in Node.js, I decided to publish Storyteller's EPUB library as a standalone NPM package. I really love the EPUB spec, and I think the Node.js developer community deserves an actively maintained library for working with it!<p>[1]: <a href="https://smoores.gitlab.io/storyteller" rel="nofollow">https://smoores.gitlab.io/storyteller</a>
Show HN: Imposter Attack – Among Us-themed infrared game made with ESP32
Show HN: Imposter Attack – Among Us-themed infrared game made with ESP32
Show HN: Imposter Attack – Among Us-themed infrared game made with ESP32
Show HN: Imposter Attack – Among Us-themed infrared game made with ESP32
Show HN: Imposter Attack – Among Us-themed infrared game made with ESP32
Show HN: I designed an espresso machine and coffee grinder
It was a lot of work as a solo project but I hope you guys think it’s cool. When I say “we” in the website it’s only in the most royal sense possible. I also did all the photo/videography. I started out designing a single machine for personal use, but like many things it sort of spiraled out of control from there.<p>I felt like espresso machines were getting very large, plasticky, and app-integrated without actually improving the underlying technologies that make them work. The noisy vibratory pumps in particular are from 1977 and haven’t really changed since then. So I wanted to focus on making the most advanced internals I could and leaving everything else as minimalist as possible. The pump is, as far as I know, completely unique in terms of power density and price. Without spending several thousand dollars, it was difficult to find a machine with a gear pump, and adjustable pressure was also similarly expensive but this machine has those things and costs a normal amount to buy. You can also turn the pressure way down and make filter coffee.<p>I also saw so many people (including myself) using a scale while making espresso, and even putting a cup below the group head to catch drips, entirely negating the drip tray, so I basically designed for that! The profile of the machine is much lighter on the eyes and doesn’t loom in the corner like my old espresso machine did.<p>And for the grinder, basically everything on the market uses conical and flat burrs that have descended from spice grinders, and the same couple of standard sizes. Sometimes larger companies design their own burrs, but only within those existing shapes. There is sort of a rush to put larger and larger burrs into coffee grinders, which makes sense, but with cylindrical burrs, you can increase the cutting surface way more relative to the size of the grinder. When grinders get too big, maintaining alignment becomes mechanically cumbersome, but the cylindrical burr can be very well supported from the inside, and there is the added benefit of hiding the entire motor within the burr itself. The resulting grounds are just outright better than all the other grinders I have used, but obviously this is a matter of taste and my own personal bias.<p>The biggest downside for the grinder is that it doesn’t work with starbucks style oily roasts, because the coffee expands so much while traveling down through the burrs and can sometimes clog up the teeth. It doesn’t hurt the grinder but it does require cleaning (which is tool-free!). Another downside for both machines is the fact that they run on DC power so it’s best if you have a spot in your kitchen to tuck away the power brick.<p>I also made a kit that makes the gear pump a drop-in upgrade for other espresso machines, to reduce noise and add adjustable pressure.<p><a href="https://velofuso.com/store/p/gear-pump-upgrade-kit" rel="nofollow">https://velofuso.com/store/p/gear-pump-upgrade-kit</a><p>The roughest part of this process were the moments midway through development where they weren’t working at all. When the grinder is just jamming itself instantly or the fourth factory in a row tells you the part you’re making is impossible or the pump is alternating between spraying water out the side and into your face and not pumping at all. And the default thought is “Of course it’s not working, if this was going to work someone else would have already made it like this”. The route you’ve taken is fundamentally different enough that there are no existing solutions to draw on. You’re basically feeling around in the dark for months on end, burning money, and then one day, every little cumulative change suddenly adds up to a tasty espresso. And it’s not perfect yet, but you at least can see the road ahead.<p>Anyways, this is way more than I expected to write, thank you for reading! Tell me if you have any questions
Show HN: I designed an espresso machine and coffee grinder
It was a lot of work as a solo project but I hope you guys think it’s cool. When I say “we” in the website it’s only in the most royal sense possible. I also did all the photo/videography. I started out designing a single machine for personal use, but like many things it sort of spiraled out of control from there.<p>I felt like espresso machines were getting very large, plasticky, and app-integrated without actually improving the underlying technologies that make them work. The noisy vibratory pumps in particular are from 1977 and haven’t really changed since then. So I wanted to focus on making the most advanced internals I could and leaving everything else as minimalist as possible. The pump is, as far as I know, completely unique in terms of power density and price. Without spending several thousand dollars, it was difficult to find a machine with a gear pump, and adjustable pressure was also similarly expensive but this machine has those things and costs a normal amount to buy. You can also turn the pressure way down and make filter coffee.<p>I also saw so many people (including myself) using a scale while making espresso, and even putting a cup below the group head to catch drips, entirely negating the drip tray, so I basically designed for that! The profile of the machine is much lighter on the eyes and doesn’t loom in the corner like my old espresso machine did.<p>And for the grinder, basically everything on the market uses conical and flat burrs that have descended from spice grinders, and the same couple of standard sizes. Sometimes larger companies design their own burrs, but only within those existing shapes. There is sort of a rush to put larger and larger burrs into coffee grinders, which makes sense, but with cylindrical burrs, you can increase the cutting surface way more relative to the size of the grinder. When grinders get too big, maintaining alignment becomes mechanically cumbersome, but the cylindrical burr can be very well supported from the inside, and there is the added benefit of hiding the entire motor within the burr itself. The resulting grounds are just outright better than all the other grinders I have used, but obviously this is a matter of taste and my own personal bias.<p>The biggest downside for the grinder is that it doesn’t work with starbucks style oily roasts, because the coffee expands so much while traveling down through the burrs and can sometimes clog up the teeth. It doesn’t hurt the grinder but it does require cleaning (which is tool-free!). Another downside for both machines is the fact that they run on DC power so it’s best if you have a spot in your kitchen to tuck away the power brick.<p>I also made a kit that makes the gear pump a drop-in upgrade for other espresso machines, to reduce noise and add adjustable pressure.<p><a href="https://velofuso.com/store/p/gear-pump-upgrade-kit" rel="nofollow">https://velofuso.com/store/p/gear-pump-upgrade-kit</a><p>The roughest part of this process were the moments midway through development where they weren’t working at all. When the grinder is just jamming itself instantly or the fourth factory in a row tells you the part you’re making is impossible or the pump is alternating between spraying water out the side and into your face and not pumping at all. And the default thought is “Of course it’s not working, if this was going to work someone else would have already made it like this”. The route you’ve taken is fundamentally different enough that there are no existing solutions to draw on. You’re basically feeling around in the dark for months on end, burning money, and then one day, every little cumulative change suddenly adds up to a tasty espresso. And it’s not perfect yet, but you at least can see the road ahead.<p>Anyways, this is way more than I expected to write, thank you for reading! Tell me if you have any questions
Show HN: I designed an espresso machine and coffee grinder
It was a lot of work as a solo project but I hope you guys think it’s cool. When I say “we” in the website it’s only in the most royal sense possible. I also did all the photo/videography. I started out designing a single machine for personal use, but like many things it sort of spiraled out of control from there.<p>I felt like espresso machines were getting very large, plasticky, and app-integrated without actually improving the underlying technologies that make them work. The noisy vibratory pumps in particular are from 1977 and haven’t really changed since then. So I wanted to focus on making the most advanced internals I could and leaving everything else as minimalist as possible. The pump is, as far as I know, completely unique in terms of power density and price. Without spending several thousand dollars, it was difficult to find a machine with a gear pump, and adjustable pressure was also similarly expensive but this machine has those things and costs a normal amount to buy. You can also turn the pressure way down and make filter coffee.<p>I also saw so many people (including myself) using a scale while making espresso, and even putting a cup below the group head to catch drips, entirely negating the drip tray, so I basically designed for that! The profile of the machine is much lighter on the eyes and doesn’t loom in the corner like my old espresso machine did.<p>And for the grinder, basically everything on the market uses conical and flat burrs that have descended from spice grinders, and the same couple of standard sizes. Sometimes larger companies design their own burrs, but only within those existing shapes. There is sort of a rush to put larger and larger burrs into coffee grinders, which makes sense, but with cylindrical burrs, you can increase the cutting surface way more relative to the size of the grinder. When grinders get too big, maintaining alignment becomes mechanically cumbersome, but the cylindrical burr can be very well supported from the inside, and there is the added benefit of hiding the entire motor within the burr itself. The resulting grounds are just outright better than all the other grinders I have used, but obviously this is a matter of taste and my own personal bias.<p>The biggest downside for the grinder is that it doesn’t work with starbucks style oily roasts, because the coffee expands so much while traveling down through the burrs and can sometimes clog up the teeth. It doesn’t hurt the grinder but it does require cleaning (which is tool-free!). Another downside for both machines is the fact that they run on DC power so it’s best if you have a spot in your kitchen to tuck away the power brick.<p>I also made a kit that makes the gear pump a drop-in upgrade for other espresso machines, to reduce noise and add adjustable pressure.<p><a href="https://velofuso.com/store/p/gear-pump-upgrade-kit" rel="nofollow">https://velofuso.com/store/p/gear-pump-upgrade-kit</a><p>The roughest part of this process were the moments midway through development where they weren’t working at all. When the grinder is just jamming itself instantly or the fourth factory in a row tells you the part you’re making is impossible or the pump is alternating between spraying water out the side and into your face and not pumping at all. And the default thought is “Of course it’s not working, if this was going to work someone else would have already made it like this”. The route you’ve taken is fundamentally different enough that there are no existing solutions to draw on. You’re basically feeling around in the dark for months on end, burning money, and then one day, every little cumulative change suddenly adds up to a tasty espresso. And it’s not perfect yet, but you at least can see the road ahead.<p>Anyways, this is way more than I expected to write, thank you for reading! Tell me if you have any questions
Show HN: Bring-your-own-key browser extension for summarizing HN posts with LLMs
Hi Hacker News,<p>I developed an open source browser extension for summarizing Hacker News articles with OpenAI and Anthropic LLMs. It currently supports Chrome [1] and Firefox [2] (desktop).<p>The extension adds the summarize buttons to the HN front page and article pages.<p>It is bring-your-own-key, i.e. there's no back end behind it and the usage is free, you insert your API key and pay only for tokens to your LLM provider.<p>[1] <a href="https://chromewebstore.google.com/detail/hacker-news-tldr/oobfhfehiidchknmihplkgknbjolanlk" rel="nofollow">https://chromewebstore.google.com/detail/hacker-news-tldr/oo...</a><p>[2] <a href="https://addons.mozilla.org/ru/firefox/addon/hacker-news-tl-dr/" rel="nofollow">https://addons.mozilla.org/ru/firefox/addon/hacker-news-tl-d...</a>
Show HN: Lfi – a lazy functional sync, async, and concurrent iteration library
Hey HN! Roughly 4 years ago I started building a lazy functional iteration library for JS/TS. I had a few goals for the library:<p>- Supporting sync, sequential async, and concurrent async iteration<p>- Limiting it to a small number of orthogonal concepts that compose beautifully to solve problems<p>- Making it fully tree-shakeable<p>I built it for myself and have (mostly) been its only user as I refined it. I've used it in lots of personal projects and really enjoyed it.<p>I recently decided it would be nice to spread that enjoyment so I created a documentation website complete with a playground where you can try out the library.<p>I hope you enjoy using it as much as I do! Looking forward to hearing your thoughts :)
Show HN: Lfi – a lazy functional sync, async, and concurrent iteration library
Hey HN! Roughly 4 years ago I started building a lazy functional iteration library for JS/TS. I had a few goals for the library:<p>- Supporting sync, sequential async, and concurrent async iteration<p>- Limiting it to a small number of orthogonal concepts that compose beautifully to solve problems<p>- Making it fully tree-shakeable<p>I built it for myself and have (mostly) been its only user as I refined it. I've used it in lots of personal projects and really enjoyed it.<p>I recently decided it would be nice to spread that enjoyment so I created a documentation website complete with a playground where you can try out the library.<p>I hope you enjoy using it as much as I do! Looking forward to hearing your thoughts :)
Show HN: Lfi – a lazy functional sync, async, and concurrent iteration library
Hey HN! Roughly 4 years ago I started building a lazy functional iteration library for JS/TS. I had a few goals for the library:<p>- Supporting sync, sequential async, and concurrent async iteration<p>- Limiting it to a small number of orthogonal concepts that compose beautifully to solve problems<p>- Making it fully tree-shakeable<p>I built it for myself and have (mostly) been its only user as I refined it. I've used it in lots of personal projects and really enjoyed it.<p>I recently decided it would be nice to spread that enjoyment so I created a documentation website complete with a playground where you can try out the library.<p>I hope you enjoy using it as much as I do! Looking forward to hearing your thoughts :)
Show HN: Kubernetes Spec Explorer
I built an interactive explorer for Kubernetes resources spec<p>A few things included:<p>- Tree view with schema, type and description of all native resources
- History changes since version X (properties added/removed/modified)
- Examples of some resources that you can easily copy as a starting point
- Supports all versions since X, including the newly released 1.32
- I also want to add support for popular CRD, but I’m not sure how I’ll do that yet, I’m open to suggestions!<p>Everything is auto generated based on the OpenAPI spec, with some manual inputs for examples and external links.<p>Hope you like it and if there’s anything else you think it could be useful just let me know.
Show HN: Kubernetes Spec Explorer
I built an interactive explorer for Kubernetes resources spec<p>A few things included:<p>- Tree view with schema, type and description of all native resources
- History changes since version X (properties added/removed/modified)
- Examples of some resources that you can easily copy as a starting point
- Supports all versions since X, including the newly released 1.32
- I also want to add support for popular CRD, but I’m not sure how I’ll do that yet, I’m open to suggestions!<p>Everything is auto generated based on the OpenAPI spec, with some manual inputs for examples and external links.<p>Hope you like it and if there’s anything else you think it could be useful just let me know.
Show HN: Kubernetes Spec Explorer
I built an interactive explorer for Kubernetes resources spec<p>A few things included:<p>- Tree view with schema, type and description of all native resources
- History changes since version X (properties added/removed/modified)
- Examples of some resources that you can easily copy as a starting point
- Supports all versions since X, including the newly released 1.32
- I also want to add support for popular CRD, but I’m not sure how I’ll do that yet, I’m open to suggestions!<p>Everything is auto generated based on the OpenAPI spec, with some manual inputs for examples and external links.<p>Hope you like it and if there’s anything else you think it could be useful just let me know.
Show HN: Kubernetes Spec Explorer
I built an interactive explorer for Kubernetes resources spec<p>A few things included:<p>- Tree view with schema, type and description of all native resources
- History changes since version X (properties added/removed/modified)
- Examples of some resources that you can easily copy as a starting point
- Supports all versions since X, including the newly released 1.32
- I also want to add support for popular CRD, but I’m not sure how I’ll do that yet, I’m open to suggestions!<p>Everything is auto generated based on the OpenAPI spec, with some manual inputs for examples and external links.<p>Hope you like it and if there’s anything else you think it could be useful just let me know.
Show HN: Quantus – LeetCode for Financial Modeling
Hi everyone,<p>I wanted to share Quantus, a finance learning and practice platform I’m building out of my own frustration with traditional resources.<p>As a dual major in engineering and finance who started my career at a hedge fund, I found it challenging to develop hands-on financial modeling skills using existing tools. Platforms like Coursera, Udemy, Corporate Finance Institute (CFI), and Wall Street Prep (WSP) primarily rely on video-based tutorials. While informative, these formats often lack the dynamic, interactive, and repetitive practice necessary to build real expertise.<p>For example, the learning process often involves:<p>- Replaying videos multiple times to grasp key concepts.<p>- Constantly switching between tutorials and Excel files.<p>- Dealing with occasional discrepancies between tutorial numbers and the provided Excel materials.<p>To solve these problems, I created Quantus—an interactive platform where users can learn finance by trying out formulas or building financial models directly in an Excel-like environment. Inspired by LeetCode, the content is organized into three levels—easy, medium, and hard—making it accessible for beginners while still challenging for advanced users.<p>Our growing library of examples includes:<p>- 3-statement financial models<p>- Discounted Cash Flow (DCF) analysis<p>- Leveraged Buyouts (LBO)<p>- Mergers and Acquisitions (M&A)<p>Here’s a demo video to showcase the platform in action. <a href="https://www.youtube.com/watch?v=bDRNHgBERLQ" rel="nofollow">https://www.youtube.com/watch?v=bDRNHgBERLQ</a><p>I’d love to hear your thoughts and feedback! Let me know what other features or examples you’d find useful.