The best Hacker News stories from Show from the past week
Latest posts:
Show HN: A central bank simulator game with a realistic economic model
Show HN: IoT device to warn you of a supernova hours before Earth is destroyed
Show HN: Recut automatically removes silence from videos – built with Tauri
I released a new version of Recut recently, rewritten from the ground up using Rust, Svelte, Tauri, TypeScript, and Tailwind (RUSTTT stack for the win!). It's the first app I've built with Tauri and I've really enjoyed it.<p>Some back story: Recut is a tool I built to speed up my screencast editing workflow. It's like a lightweight single-purpose video editor. It chops out the pauses, with some knobs to tweak how closely it cuts and what it leaves in, and lets you get a live preview of what it'll look and sound like with the cuts applied. It can then export to a handful of other editors, nondestructively, so that you can use the full capabilities of a "real" video editor.<p>It was originally a native Mac app written in Swift, and people kept asking for a Windows version. I had learned Swift and macOS development to build it originally. So as a solo developer, I had some choices to make. Keep it Mac-only? Learn <i>another</i> whole language + UI framework, rebuild the app, and maintain two codebases? Rebuild the app with a cross-platform toolkit?<p>I'd had experience with Qt and C++ in years past, but I honestly didn't love the idea of getting back into C++ and dealing with the inevitable hard-to-debug segfaults. I'd had more recent experience as a web developer, but I was worried about performance bottlenecks. I actually started down the path of building Recut in Electron and Rust (using NAPI-RS for bindings) and it looked promising, but I was still worried about the bloat of Electron.<p>A few months in, I took a closer look at Tauri, and ported the whole app from Electron in a week or so. Most of the heavy lifting was already in Rust, and the UI stuff pretty much "just worked". The biggest change was the bindings between JS and Rust.<p>Working with Tauri has been nice. I especially like their "State" system, which gives you an easy way to keep app-wide state on the Rust side, and inject specific parts of it into functions as-needed. I also really like how easy it is to write a Rust function and expose it to JS. The process model feels a lot easier to work with compared to Electron's split between renderer and main and preload, where you have to pay the cost of passing messages between them lest you ruin the security. Tauri's message-passing has a decent amount of overhead too, but I dealt with that by avoiding sending large amounts of data between JS <-> Rust and it's been fine.<p>The Tauri folks on Discord were a big help too (shout out to Fabian for the help when I ran into weird edge cases). I think Tauri has a bright future! Definitely worth a look if you know web tech and want to make cross-platform apps.
Show HN: I made a site that shows jobs where you can work pseudonymously
Show HN: My Side Project Rocks – Share and discover side projects
Show HN: Offline voice messages transcription in Signal Desktop
Show HN: Visualizing the math that powers 3D character animation
Hi everyone! I'm the author of this project. I wrote it because I think that the math that makes characters move in games and movies is incredibly beautiful, and I wanted to give others a glimpse into it.<p>It's crazy to think that quaternions, an abstract mathematical tool discovered by William Rowan Hamilton in 1843, would be so perfectly suited to solve hard problems in the world of 3D character animation more than a hundred years later. The story of how he discovered quaternions is also beautiful. Here's an excerpt from Wikipedia:<p>"Hamilton was looking for ways of extending complex numbers (which can be viewed as points on a 2-dimensional Argand diagram) to higher spatial dimensions. In working with four dimensions, rather than three, he created quaternion algebra. According to Hamilton, on 16 October he was out walking along the Royal Canal in Dublin with his wife when the solution in the form of the equation<p>i2 = j2 = k2 = ijk = −1<p>occurred to him; Hamilton then carved this equation using his penknife into the side of the nearby Broom Bridge (which Hamilton called Brougham Bridge)."<p>There's a plaque that commemorates that moment on Broom Bridge now.<p>If you have any questions about this project, I would love to answer them, but I recommend reading the README first, which should explain everything:<p><a href="https://github.com/diegomacario/Animation-Magic/blob/main/README.md" rel="nofollow">https://github.com/diegomacario/Animation-Magic/blob/main/RE...</a><p>Thank you!
Show HN: Tuc – When cut doesn’t cut it
Announcing `tuc`, a utility similar to coreutils `cut`, but more powerful.
It allows to split text or bytes into parts and reassemble them in any order.<p>I always found `cut` very practical for some tasks where `sed` or `awk` were overkill or awkward to use, but I also felt the need for more features.<p>Some key differences from `cut`:
- parts can be referenced by negative indexes
- delimiters can be any number of characters long, or match a regex
- can split text into lines, and reassemble them
Show HN: Browser extension that spoofs your location data to match your VPN
Show HN: Browser extension that spoofs your location data to match your VPN
Show HN: My small program from 2007 that gave Internet Explorer tabs
Show HN: My small program from 2007 that gave Internet Explorer tabs
Show HN: Ory Kratos – Open-source identity server written in Go
Show HN: Read Wikipedia privately using homomorphic encryption
Show HN: Unreal Speech – Text-to-Speech API
Show HN: Umbrel – A personal server OS for self-hosting
Show HN: The Bitcoin Note – Secure, Self-Custodial Bitcoin Wallets in Cash Form
Show HN: Seal – Verifiable timestamp for your private ideas
Show HN: I restored Palm's webOS App Catalog, SDK and online help system
My pandemic project was to find, restore and organize scattered and archived remnants of Palm/HP's mobile webOS platform to help keep these delightful little devices alive.
Show HN: I restored Palm's webOS App Catalog, SDK and online help system
My pandemic project was to find, restore and organize scattered and archived remnants of Palm/HP's mobile webOS platform to help keep these delightful little devices alive.