Saturday, 4 January 2025

Show HN: WebGPU + TypeScript Slime Mold https://bit.ly/4j1PCo2

Show HN: WebGPU + TypeScript Slime Mold https://bit.ly/4j4B86X January 2, 2025 at 05:37PM

Friday, 3 January 2025

Show HN: I completed shipping my desktop app https://bit.ly/4jdw4gO

Show HN: I completed shipping my desktop app Hi, I'm a developer and first time i shipped the real product after observing the startups and indie hackers community for years. I had made so many useless apps [you should check my website https://bit.ly/4gWELdg ], but this time I built a very useful product that has a number of super easy-to-use tools in one app for video, music, and photo files. Users can compress, convert, resize, and do so much more with easy-to-use tools. Background: I developed a frame-by-frame video cropper to upload cropped landscape videos to Instagram Reels. However, it required FFmpeg, and as a noob video editor, I decided to incorporate more user-friendly video tools. I then introduced image and audio tools to maximize the capabilities of FFmpeg. I use my app daily, and it has surprisingly generated a few thousand dollars for me. https://bit.ly/4gWELKi January 3, 2025 at 01:20PM

Show HN: AI that generates 3blue1brown-style explainer videos https://bit.ly/4fRX02Q

Show HN: AI that generates 3blue1brown-style explainer videos I've been building prototypes of new AI learning tools for months, but I recently learned that 3blue1brown open sourced his incredible math animation library, Manim, and that LLMs could generate code for it without any fine-tuning. So I made a tool that automatically generates animated math/science explanations in the style of 3blue1brown using Manim from any text prompt. Try it yourself at https://bit.ly/40l0p5F (no signup required) The UX is pretty simple right now, you just write a text prompt and then start watching the video as it's generated. Once it's done generating you can download it. I built this because I kept finding myself spending 30+ minutes in AI chats trying to understand very specific concepts that would have clicked instantly if there were a visual explanations on YouTube. Technical Implementation: - LLM + prompt to use Manim well, right now this uses Gemini with grounding to ensure some level of factuality, but it works equally well with Claude - Manim for animation generation - OpenAI TTS for the voiceovers - Fly.io for hosting the web app - Modal.com for fast serverless GPUs to render the videos - HLS protocol for streaming the videos as they are rendered Note: This is focused on STEM education and visualization, and it is particularly good for math, but get creative and try it with anything! I used it recently to teach my partner's parents a new board game in Mandarin (which I don't speak!) I'll be around to answer questions. Happy learning! https://bit.ly/40l0p5F January 3, 2025 at 11:44PM

Thursday, 2 January 2025

Show HN: Made a small JavaScript benchmarking app – BenchJS https://bit.ly/4hir2hl

Show HN: Made a small JavaScript benchmarking app – BenchJS https://bit.ly/3BVPANY December 31, 2024 at 09:42AM

Show HN: NeatShift – A Modern Windows File Organizer with Symbolic Link Support https://bit.ly/4fCfkg4

Show HN: NeatShift – A Modern Windows File Organizer with Symbolic Link Support Hi HN, I've been developing NeatShift, a Windows application designed to help users organize their files and folders seamlessly using symbolic links. The aim is to declutter storage without disrupting file accessibility. Key Features: Smart Moving: Relocate files while NeatShift creates symbolic links to maintain system functionality. Safety Measures: Options for quick backups with NeatSaves and system restore points to ensure data integrity. Integrated File Explorer: Modern interface with drag-and-drop support, customizable views, and both light and dark themes. Link Management: Easily view and manage all symbolic links in one place. I initiated this project to address the challenges of managing large files on limited SSD storage, ensuring that moving files doesn't break application dependencies. NeatShift is open-source (GPL-3.0 license), and I'm actively seeking feedback and contributors to enhance its functionality. Explore the project here: GitHub Repo https://bit.ly/4iRubGh Looking forward to your thoughts and suggestions! https://bit.ly/4iRubGh January 2, 2025 at 08:26PM

Wednesday, 1 January 2025

Show HN: MailMock – Simplified Email Testing for Developers https://bit.ly/40gwMSM

Show HN: MailMock – Simplified Email Testing for Developers I work at a software consulting company where we often face the challenge of testing email functionality in non-production environments. Typically, email sending is disabled in development and staging, making it difficult to verify whether emails are formatted correctly or even sent at all without making significant code changes. I experimented with self-hosting an SMTP server, but the maintenance overhead was too high. This led to the idea for MailMock, which offers a simpler solution: by simply changing the SMTP credentials, you can redirect emails without the need for server management or code rewrites. MailMock is a tool designed for developers to test emails in development and staging environments. It captures emails into dedicated test inboxes, allowing you to validate your app's or website's email flow. Features include multi-user collaboration and an email retention policy of up to 90 days, making debugging and testing easier. On the technical side, MailMock is built using C# for the backend, React for the frontend, and SQLite as the database. You can try MailMock by signing up [here]( https://bit.ly/40huIdm ). Once you sign up, you can create a project and immediately start testing by changing your SMTP settings to point to our service. Let me know what you think, or if you have any issues or suggestions! https://bit.ly/40gGEvN January 2, 2025 at 03:49AM

Show HN: I built a green noise player to help you relax, focus, and stay calm https://bit.ly/40eTkU5

Show HN: I built a green noise player to help you relax, focus, and stay calm Sometimes, I struggle to block distractions and create a calming environment while working. Most tools I’ve tried were either cluttered, didn’t provide the right kind of sound, or required payment. So, I decided to build my own simple green noise player. For context, green noise features balanced, mid-range frequencies that mimic soothing natural sounds—ideal for relaxation, focus, or creating a peaceful backdrop while working. It’s also great for taking a mindful break during a busy day. Right now, it’s a free, lightweight, browser-based solution. Playback pauses on mobile when the screen locks, but I’m exploring ways to improve it. Maybe a dedicated mobile version in the future? Would love to hear your thoughts and feedback! https://bit.ly/40gwrzt January 1, 2025 at 11:19PM

Show HN: API Parrot – Automatically Reverse Engineer HTTP APIs https://bit.ly/40ffLbA

Show HN: API Parrot – Automatically Reverse Engineer HTTP APIs When automating business processes at work, I found it difficult and time-consuming to reverse engineer business systems' APIs. I often had to manually reverse engineer APIs using developer tools or settle for less optimal technologies such as Robotic Process Automation (RPA). Often, the issue is that it can be hard to resolve all the cookies, access tokens, and other elements required to successfully execute the requests. Manually trying to resolve these dependencies using developer tools is especially challenging with multiple requests where data is stored in JavaScript objects or HTML elements. To try to solve this issue, I built a tool called API Parrot that automatically identifies the data correlations between requests and builds a graphical representation of the flow to give users a better understanding. To streamline the process, I also included functionality to record requests, define your own inputs and outputs, and export the entire flow—or parts of it—as JavaScript code. The application is Electron-based and currently compiled for Windows and Linux. Please try it out and give feedback! Online Tutorial: A simple example of reverse engineering the USPS API is available at https://bit.ly/40kgWa4... https://bit.ly/3BNaFtX January 1, 2025 at 02:15PM

Show HN: A better Python API for async UDP https://bit.ly/3PiR33V

Show HN: A better Python API for async UDP https://bit.ly/3PjQV4f January 1, 2025 at 05:30AM

Tuesday, 31 December 2024

Show HN: Customizable, Printable Visual progress tracker based on Jerry Seinfeld https://bit.ly/4fA03MM

Show HN: Customizable, Printable Visual progress tracker based on Jerry Seinfeld Hello Hacker News community! I'm excited to introduce Don't Break the Chain, a project born from my own need for a visual progress tracker to achieve goals through consistency. I made this after reading the the story from Brad Isaac about an advice he received from Jerry Seinfeld. "He told me to get a big wall calendar that has a whole year on one page and hang it on a prominent wall. The next step was to get a big red magic marker. He said for each day that I do my task of writing, I get to put a big red X over that day. [Then Jerry said]: After a few days you’ll have a chain. Just keep at it and the chain will grow longer every day. You’ll like seeing that chain, especially when you get a few weeks under your belt. Your only job is to not break the chain." This tool is designed for anyone who wants to track progress in a visual way. What goals are you working on currently? I’d love to hear your thoughts and feedback! https://bit.ly/3Pgqix0 January 1, 2025 at 12:58AM

Show HN: dorm: Django wrapper that lets you use its ORM in standalone manner https://bit.ly/423aLIm

Show HN: dorm: Django wrapper that lets you use its ORM in standalone manner dorm is a lightweight wrapper around Django that provides a minimal interface to its ORM. This package allows you to quickly integrate Django's powerful ORM into your project with minimal configuration—simply add a settings.py file to the project root and you're ready to start using it. PyPI: https://bit.ly/3PivlNr Source: https://bit.ly/4gF6Yps Give me feedback, if you do give it a try. ## Motivation I’ve always been a big fan of the Django ORM, especially its features like automatic schema migrations and the ability to perform joins without writing raw SQL. Over time, I’ve used it outside of full Django projects whenever I needed to interact with a database. Given the richness of Django’s ORM, I found other standalone ORMs (like SQLAlchemy) to be lacking in comparison. During these experiences, I kept wondering: what if I could use just the ORM, without the need for manage.py, views.py, urls.py, or any unnecessary entries in settings.py? That’s how the idea for this project was born. https://bit.ly/3PivlNr December 31, 2024 at 11:21PM

Monday, 30 December 2024

Show HN: I Made a Dumb Game https://bit.ly/4gx7Egk

Show HN: I Made a Dumb Game https://bit.ly/3VZof4n December 31, 2024 at 02:50AM

Show HN: I built a movie recommendation app https://bit.ly/3ZZ7XJF

Show HN: I built a movie recommendation app https://bit.ly/4jbZU5p December 31, 2024 at 12:35AM

Show HN: Emacs on a Kobo Clara BW ebook reader https://bit.ly/4iPrvJc

Show HN: Emacs on a Kobo Clara BW ebook reader https://bit.ly/4iZG3WE December 31, 2024 at 12:06AM

Show HN: Uuid.now F# based simple UUID generator https://bit.ly/4gV6dbr

Show HN: Uuid.now F# based simple UUID generator Need a fast, easy-to-use, and memorable UUID/Guid generator? Built with the power and elegance of F#! https://bit.ly/4gAfhml is here! One-click copy Zero UUID support Browser-based (Crypto API) Fully open source Explore the source code here: https://bit.ly/4gzUSxK https://bit.ly/4gAfhml December 30, 2024 at 11:54PM

Show HN: Timesheet Conversion Calculator – Simplify Hours to Decimals Instantly https://bit.ly/4gSJv3v

Show HN: Timesheet Conversion Calculator – Simplify Hours to Decimals Instantly https://bit.ly/41VImnQ December 30, 2024 at 10:56AM

Show HN: I reverse engineered X to Read Threads without Any Account as Articles https://bit.ly/40br98z

Show HN: I reverse engineered X to Read Threads without Any Account as Articles Hi fellow hackers, I'm Ved, I came across the pain point of having a reader that could provide threads as articles after scrolling them many times and missing the context of the original info shared. To solve my itch I decided to build a thread reader without Ads(all existing sol. were full of them), since X/Twitter API was very pricey, I did some reverse engineering to convert rendered X.com/twitter pages to an API and host it in a VM (which obv. was dead cheap). All of your data is saved in LocalStorage. Including your comments and saved threads(there is a known issue with Linux and MacOS browsers i think). Code is open-sourced at : https://bit.ly/4fBz7fB App is available at : https://bit.ly/3BKu2nr There are two views inbuilt in app https://bit.ly/40ozead... https://bit.ly/40gfQMt... Reverse Engineered X API is available at https://bit.ly/49ZXsdG... Meanwhile you can enter any twitter thread url on https://bit.ly/3BKu2nr to get a clean and read friendly article. Here's the stack(if anyone's interested): NextJS FastAPI Selenium That's all folks, looking towards a productive feedback session. December 30, 2024 at 09:24AM

Sunday, 29 December 2024

Show HN: Onramp Can Compile Doom https://bit.ly/3ZTuzeN

Show HN: Onramp Can Compile Doom https://bit.ly/3BWXxCo December 30, 2024 at 07:40AM

Show HN: WIP NandToTetris Emulator in pure C – logic gates to ALU to CPU to PC https://bit.ly/4fyRUIl

Show HN: WIP NandToTetris Emulator in pure C – logic gates to ALU to CPU to PC NandToTetris is a course which has you build a full computer from: Logic gates -> Chips -> RAM -> CPU -> Computer -> Assembler -> Compiler -> OS -> Tetris All this is done via software defined hardware emulation. I'm building an emulator for this entire stack in C. How is my approach different to other projects that seek to build emulators? - I start with a single software defined NAND gate in C. - EVERYTHING is built from this base chip - Rather than using existing programming utilities (boolean logic operators, bitwise logic operators etc) I build everything from this NAND gate. (Note: to bootstrap, I use boolean logic in the NAND chip only) - I don't use any boolean logic at all anywhere in the gates/chips (except NAND) - I build more and more base chips from the NAND gate, working my way up to an ALU, RAM, then the CPU. ------ Confused? Heres example code for my NAND gate: void nand_gate(Nand *nand) { nand->output.out = !(nand->input.a & nand->input.b); } From this gate I build a NOT gate (note, no boolean operators) void not_gate(Not * not ) { Nand nand = { .input.a = not ->input.in, .input.b = not ->input.in, }; nand_gate(&nand); not ->output.out = nand.output.out; } Then OR / AND / XOR / MUX / DMUX ..... and their 16 bit versions. Heres a more complex chip, a 16bit Mux-8-way chip /* * out = a if sel = 000 * b if sel = 001 * c if sel = 010 * d if sel = 011 * e if sel = 100 * f if sel = 101 * g if sel = 110 * h if sel = 111 */ void mux16_8_way_chip(Mux16_8_Way *mux16_8_way) { Mux16_4_Way mux16_4_way_chip_a, mux16_4_way_chip_b; Mux16 mux16_chip_c; // Mux a memcpy(mux16_4_way_chip_a.input.sel, mux16_8_way- >input.sel, sizeof(mux16_4_way_chip_a.input.sel)); memcpy(mux16_4_way_chip_a.input.a, mux16_8_way->input.a, sizeof(mux16_4_way_chip_a.input.a)); memcpy(mux16_4_way_chip_a.input.b, mux16_8_way->input.b, sizeof(mux16_4_way_chip_a.input.b)); memcpy(mux16_4_way_chip_a.input.c, mux16_8_way->input.c, sizeof(mux16_4_way_chip_a.input.c)); memcpy(mux16_4_way_chip_a.input.d, mux16_8_way->input.d, sizeof(mux16_4_way_chip_a.input.d)); mux16_4_way_chip(&mux16_4_way_chip_a); // Mux b memcpy(mux16_4_way_chip_b.input.sel, mux16_8_way->input.sel, sizeof(mux16_4_way_chip_b.input.sel)); memcpy(mux16_4_way_chip_b.input.a, mux16_8_way->input.e, sizeof(mux16_4_way_chip_b.input.a)); memcpy(mux16_4_way_chip_b.input.b, mux16_8_way->input.f, sizeof(mux16_4_way_chip_b.input.b)); memcpy(mux16_4_way_chip_b.input.c, mux16_8_way->input.g, sizeof(mux16_4_way_chip_b.input.c)); memcpy(mux16_4_way_chip_b.input.d, mux16_8_way->input.h, sizeof(mux16_4_way_chip_b.input.d)); mux16_4_way_chip(&mux16_4_way_chip_b); // Mux c mux16_chip_c.input.sel = mux16_8_way->input.sel[2]; memcpy(mux16_chip_c.input.a, mux16_4_way_chip_a.output.out, sizeof(mux16_chip_c.input.a)); memcpy(mux16_chip_c.input.b, mux16_4_way_chip_b.output.out, sizeof(mux16_chip_c.input.b)); mux16_chip(&mux16_chip_c); memcpy(mux16_8_way->output.out, mux16_chip_c.output.out, sizeof(mux16_8_way->output.out)); } ----- Progress: I have only started this project yesterday, so have completed 1 out of 7 hardware projects so far https://bit.ly/41V1amV December 30, 2024 at 02:05AM

Saturday, 28 December 2024

Show HN: I Made a Histogram Maker https://bit.ly/49YffCe

Show HN: I Made a Histogram Maker https://bit.ly/49YffSK December 29, 2024 at 06:28AM