MurphyA/hacker-news huggingface dataset:
by QuiCreatDev | 2026-03-03 12:58:33+00:00
Hi HN,
If you run a B2B SaaS or e-commerce platform in Europe, you are legally required to validate your customers' VAT numbers for the reverse charge mechanism. The official way to do this is via the European Commission's VIES API (SOAP/REST).
The problem? It is notoriously unreliable. It frequently goes down during business hours, has strict rate limits, and is generally slow because it queries member states' databases synchronously. Furthermore, it only provides a snapshot in time—if a client goes bankrupt months later, you won't know until invoices bounce.
I got frustrated dealing with these 5xx errors in checkout flows, so I built VatFlow to act as a resilient proxy and monitoring system.
Here is the technical stack and how it works:
100% Serverless: Built on AWS API Gateway and Node.js Lambdas.
Caching Layer: I use DynamoDB to cache responses (with a configurable TTL). If VIES goes down, returning customers can still be validated instantly.
Webhooks via DynamoDB Streams: You can subscribe to a VAT number. A nightly EventBridge cron job checks the status. If the administrative status or address changes, it fires a POST request to your endpoint.
Native SDKs: I wrote zero-dependency wrappers for Node.js and PHP that handle the exponential backoff and retries natively.
It is currently hosted on RapidAPI to handle the billing and rate-limiting, with a free tier available for testing.
I would love to get your feedback on the serverless architecture, the caching strategy, or the API design. Happy to answer any technical questions!
by inejge | 2026-03-03 12:58:48+00:00
> [The same timezone in Poland and Spain] sounds like an unnecessary EU standardization.

Well, if you look up the histories of the time zones in the respective countries ("Time in Poland" and "Time in Spain" on Wikipedia, I have no reason to doubt their accuracy) you'll see that both settled on CET, with or without daylight savings, long before the EU was even an idea.
by speak2aditya | 2026-03-03 12:58:50+00:00
Last month I was debugging an unrelated issue and noticed one of my endpoints was returning the full table schema and a list of user emails as objects. It should have been returning just an ID.

That endpoint had been live for months. It returned 200. The UI worked. I never looked at the actual response body.

Static analysis can't catch what's actually being sent over the wire at runtime. That's when I started building Brakit. I wanted a tool that does three things:

1. See everything. Every HTTP request and response, every database query, every external fetch, grouped by what the user actually did. "Checkout" → 3 requests → 6 queries → 1 Stripe call.

2. Automatic checks. 8 security rules and 13 performance rules scanning every response in real time. If an endpoint is leaking PII, exposing stack traces, or running the same query 14 times in a loop, brakit flags it.

3. Cross-session regression tracking. If an endpoint gets slower or fires more queries after a refactor, you see it before your users do.

It also has a built-in MCP server. Type "fix brakit findings" in Cursor or Claude Code and the AI gets full runtime context: every request, query, and issue.

Most observability tools catch these problems in production. Brakit catches them on your machine, during development, before you ship.

npx brakit install

One command. Then run your app normally. Dashboard at localhost:3000/__brakit.

Tested on Next.js + Prisma + PostgreSQL and MySQL. Brakit is designed to be framework agnostic. Adding support for a new framework is a single adapter file.

Open source (MIT). Everything runs locally.

Demo: https://www.youtube.com/watch?v=IqTmlyIo3Mo
GitHub: https://github.com/brakit-ai/brakit
Site: https://brakit.ai

Would you add something like this to your dev workflow? What security rules or framework support would matter most to you?
by akdev1l | 2026-03-03 12:58:58+00:00
I think it’s meant for the case where a child is using an adult’s user account but maybe their own account within that

eg: you let your child use your laptop for a bit to play Roblox. The child logs into the Roblox account which has their real age. As per the law Roblox is required to use their inner age signal instead of the OS provided one.

I suppose it could also go the opposite way: if your steam account is 18 years old by itself then probably we can treat you like a grown up and ignore the OS provided signal.

I guess the latter form would be quite rare for anyone to implement.
by mapontosevenths | 2026-03-03 12:59:40+00:00
There must be a line somewhere, and it is reasonable to debate where exactly that line should be.

In this case, it feels natural to me that the line for images should be aligned with the line for the act itself.

Banning images of things that are not themselves illegal makes little sense to me and feels a bit like someone trying to legislate away otherwise legal behavior just because they personally find it distasteful.
by hrmtst93837 | 2026-03-03 12:59:50+00:00
Modding Windows often leads to frustrating stability issues, especially after updates. While Linux provides better customization with distros like Arch or Fedora, I've achieved some stability on Windows through setups like WSL2. Still, the inherent restrictions can limit the overall experience. For those prioritizing reliability and customization, exploring Linux is a wise choice.
by cowboylowrez | 2026-03-03 13:00:46+00:00
Honestly its like any other profession up to and including the presidency, sometimes you mistakenly hire a crook like say Nixon or something. People and planets really do get hurt but its a normal thing, I was mugged once, had my shit stolen, and while someone may or may not eventually be held responsible, I would probably in any case never become "unmugged" or have my shit returned to me.
by rasikjain | 2026-03-03 13:00:58+00:00
Location: Greater New York (US Citizen)

Remote: Yes

Willing to relocate: No

About: I’m a Full-Stack Engineer who builds applications that bridge the gap between web development and AI. Lately, I’ve been focused on making GenAI actually useful—moving beyond simple prompts to build Agentic AI and RAG systems that handle complex data. From cleaning up messy datasets to deploying LLM-powered features like natural language search, I enjoy the challenge of making "smart" features feel seamless for the end user.

Technologies:

• Languages : JavaScript ㆍ TypeScript ㆍ Python ㆍ C# ㆍ SQL

• Gen AI: LLMs (OpenAI, Gemini, Groq) ㆍ RAG Pipelines ㆍ AI Agents (LangChain, LangGraph) ㆍ VectorDBs (Pinecone, ChromaDB)

• Data Science & ML: Pandas ㆍ Scikit-learn ㆍ Hugging Face ㆍ NumPy ㆍ Matplotlib ㆍ Streamlit

• Web & Frontend : React ㆍ Next.js ㆍ Redux ㆍ Data Viz (D3.js, Chart.js) ㆍ Tailwind CSS

• Backend (APIs): Node.js ㆍ Express.js ㆍ ASP.NET Core ㆍ FastAPI

• Databases: PostgreSQL ㆍ MongoDB ㆍ Redis ㆍ SQL Server ㆍ Firebase

• Cloud & DevOps: AWS (Aurora, DynamoDB, IAM) ㆍ Azure ㆍ GCP ㆍ Docker ㆍ Jenkins ㆍ Serverless

• Tools & Auth: Figma ㆍ Git ㆍ Keycloak

Email: jainrasik [at] gmail.com

Resume/CV: https://www.rasikjain.com/resume/

LinkedIn: https://www.linkedin.com/in/rasikjain/

GitHub: https://github.com/rasikjain

Stack Overflow: https://stackoverflow.com/users/1993944/rasik-jain
Show HN: PDFBolt – HTML to PDF API with Git-like template versioning
by Ametrin | 2026-03-03 13:01:23+00:00
Hi HN, I'm Michał. I posted PDFBolt here about a year ago as a basic
HTML to PDF API. Since then I've been rebuilding it around the thing
that kept bugging me: every time a designer tweaked a layout,
it meant a code change, a deploy, and a prayer that nothing broke
in production. I wanted templates that live on the server and version
themselves, so my API calls stay the same when the layout changes.

Try the editor, no sign-up. Open a sample report, change the data,
and download a real PDF:
https://pdfbolt.com/try

Templates use Handlebars. Your API call sends a templateId + JSON data. You
update the template in the dashboard, your code never changes. Every
edit auto-creates a draft, and you publish when ready. You can browse
history and compare any two versions as rendered PDFs side by side.
The comparison shows rendered PDFs, not just code. A one-line margin tweak
can push a table onto the next page, and you won't catch that in code.
You can roll back with one click if something breaks.

Right now template management lives in the dashboard. I'm working on
an API so coding agents can create and version templates programmatically.

The part I went deepest on recently was compression. The compressor
samples every 10th pixel to classify each image as bitonal, grayscale,
or color, then picks an encoding per image. Bitonal gets CCITT Group 4
with Otsu's method for the threshold. Color and grayscale get JPEG.
Images with alpha channels get split into RGB (JPEG, lossy) and mask
(FlateDecode, lossless) via an SMask so edges stay sharp. Before any
of that, MD5 hashes of raw streams deduplicate identical images across
pages, and everything gets downscaled to target DPI.

Four tiers: lossless, low, medium, high. A 23 MB product catalog with
photos dropped to 1.6 MB on high.

Built on Apache PDFBox. I looked at Ghostscript but it's AGPL, which
doesn't work for a hosted SaaS.

I also support PDF/X-1a and PDF/X-4 for print with RGB to CMYK
conversion and ICC profiles. Happy to talk about the color pipeline
in comments.

Stack: headless Chromium via Playwright, Kotlin/Spring Boot, EU-hosted.
I don't store template data after rendering.

Two-person team, bootstrapped. Revenue: https://trustmrr.com/startup/pdfbolt
Free: 100 PDFs/month, no card
Docs: https://pdfbolt.com/docs

Ask me anything about compression internals, template versioning,
color pipeline, or whatever.
by 5o1ecist | 2026-03-03 13:01:29+00:00
> you're a bot

NO, MY FELLOW HUMAN, I AM NOT A BOT! I AM AN OXYGEN CONVERTING FLESHLING JUST LIKE YOURSELF, MY FELLOW HUMAN FRIEND!

https://old.reddit.com/r/totallynotrobots

I'm just a more advanced version, appropriate for modern times.
by cmiles74 | 2026-03-03 13:01:45+00:00
This was one of the first hits on Kagi. 404 has a similar article (I think) but it's behind a paywall.

"The demand for this ‘Ray-Ban hack’ has been steadily increasing, with the hobbyist’s waiting list growing longer by the day. This demonstrates a clear desire among Ray-Ban owners to exercise more control over their privacy and mitigate concerns about unknowingly recording others."

https://bytetrending.com/2025/10/28/ray-ban-hack-disabling-t...
by cxr | 2026-03-03 13:01:55+00:00
There's a really interesting approach in the Oberon system where a text file is a type called Text that's fundamental to the system. You typically interact with text files through the Texts module similar to the way you get a file pointer from fopen and nose your way through using fread in UNIX/C's stdio.h.

One thing that's easy to miss (even when you're reading an explanation of it) is that Text is an abstract data type, and so while it may feel like you're interacting with a plain text file like on any other system, the reality is that the actual bytes on disk don't matter; as long as the Text ADT is able to support it (read: the Texts API gives you what you need), then hypothetically the file could be gzip-compressed binary serialization of XML for all it matters. (NB: It's not, though.)

Oberon exploits this by having a "looks" subsystem in the same Texts module that's entirely orthogonal to the read (and write) operations of the textual content of the file. This means the Texts module is able to include APIs that let you adjust the color, font, and spacing of an arbitrarily selected range in any "text file"—even source code. So you can have italics, bold, etc. in your program's source, but because the compiler, like any other program, interacts with the files using the API from the Texts module, it doesn't matter that they're there, and the compiler's tokenizer is able to proceed through it all totally unaware.
Show HN: DataPilot – SQL workspace with scheduling, and on-prem execution
by vincenzo_nudo | 2026-03-03 13:01:59+00:00
I built DataPilot after 2 years working inside a data team where SQL operations were fragmented across too many tools.

DataPilot combines:
- shared SQL workspace (queries, variables, comments, history)
- recurring and one-shot runs
- data quality / metric monitoring with alerts
- CSV/XLSX delivery workflows
- cloud, desktop, and on-prem execution modes
- optional AI for schema documentation in context

Built with ASP.NET Core, Blazor, PostgreSQL, and SignalR.

Happy to answer technical questions and tradeoffs.
Product Hunt: https://www.producthunt.com/products/datapilot
Website: https://getdatapilot.com
by bkraszewski | 2026-03-03 13:02:24+00:00
I'm a solo dev. I got frustrated learning AI fundamentals — textbooks are slow, YouTube is shallow, Twitter threads vanish. I wanted something in the middle.

So I built a scrollable feed where each post is one bite-sized idea. Visuals first, formulas second.

You scroll through concepts the way you'd scroll X, except you're actually learning how neural networks work.

The entire Intro to AI course is free, no signup. 12 concepts, 100+ posts, quizzes inline.

Curious what HN thinks: does a "feed" format genuinely work for technical learning, or is it just content-snacking?
Show HN: Core Rth. A governed AI kernel for engineers who don't trust their LLMs
by christianrth | 2026-03-03 13:03:02+00:00
Hey HN,

I spent the last 20 years building enterprise software and cybersecurity tools. Last year I started using AI agents for real work — and got terrified. Every tool I tried would happily `rm -rf /` if you phrased it right. One popular agent literally tried to exfiltrate SSH keys (you might have seen that HN post).

So I built Core Rth. It's not a chatbot wrapper. It's a Sovereign Cognitive Kernel — an AI backend where every LLM action is a proposal that must survive a governance layer (The Guardian) before it touches your filesystem, your network, or your hardware.

Here's the thing that makes it different from OpenClaw and friends: Core Rth was designed from day one to control physical systems (IoT via Home Assistant, robots via ROS2, drones via MAVLink). When your AI can actuate a robotic arm or fly a drone, "move fast and break things" is not an option. So we built a Global E-Stop — a hardware kill switch in the Web UI that severs all physical agency instantly.

What's under the hood:

- Guardian: proposal-first governance. No destructive action runs without consent. Ever.
- Security Vault: AES-256-GCM encrypted credentials, OS keyring only, zero plaintext keys.
- AI Village: parallel agents (Architect, Critic, Synthesizer) debate on a Knowledge Graph before answering.
- Model Router: mix OpenAI + Anthropic + local Ollama/vLLM. Route by task type, cost, or privacy.
- Mission Control: real-time Web UI with bridge telemetry, policy ledger, and the big red E-Stop.

Try it:

git clone https://github.com/rthgit/CORE-RTH.git
cd CORE-RTH
pip install -r requirements.txt
python scripts/run_core_rth_local_bench_api.py
# Open http://127.0.0.1:18030/ui/

Stack: Python 3.10+ / FastAPI / vanilla JS frontend (no React). Source-available license (free for non-commercial/research).

I built this because I needed an AI system I could actually trust with my infrastructure. If you're an engineer or CTO who feels the same way, I'd love your feedback on the architecture.

GitHub: https://github.com/rthgit/CORE-RTH

Created by Christian Quintino De Luca — info@rthitalia.com
by jermaustin1 | 2026-03-03 13:04:26+00:00
A former boss of mine took off to Everest for a month leaving me (a 22 year old, at the time) in charge of the office. I was out to dinner with my now wife when I got a call from a very long phone number I didn't recognize, so I ignored it. I then got another one right after, and picked it up. It was my boss, he needed me to log into his personal email to grab a phone number for the medical insurance he purchased for the trip, because he had been vomiting for days due to altitude sickness, and needed a medical evacuation.

That was the most stressfully hard to use phone call I've ever had. The delay was nearly 10 seconds, and eventually I just said I was only going to speak yes or no, if he needed a longer answer he needed to shut up. And that worked. We no longer talked over eachother.
by zrwusa | 2026-03-03 13:04:28+00:00
Hi HN! I built a data structures library for JavaScript/TypeScript that I've been refining for 2+ years.

Why another one?
Native JS only gives us Array, Map, Set, Object. When you need a sorted map, priority queue, or graph algorithms, you're stuck with either: - Half-baked npm packages with poor TS support - Porting Java/C++ code yourself - Libraries that expose too many internals
What's different:

1. Native API feel - TreeMap/TreeSet work like Map/Set, just sorted:
2. Java-style navigation - floor(), ceiling(), lower(), higher(), rangeSearch()

3. Full TypeScript - No any types, proper generics throughout

4. Performance - Red-Black Tree backed, ~2x faster iteration than js-sdsl

Included: - Binary Trees: BST, AVL, Red-Black, TreeMap, TreeSet, TreeMultiMap - Heaps: Min/Max Heap, Priority Queue - Graphs: Directed/Undirected with Dijkstra, Bellman-Ford, Tarjan, etc. - Linear: Queue, Deque, Stack, LinkedList - Others: Trie, HashMap

npm: npm install data-structure-typed

Happy to answer questions about implementation details, performance tradeoffs, or TypeScript typing challenges!
by codegladiator | 2026-03-03 13:04:30+00:00
> She had no intention to misquote or misrepresent the rulings and that "the mistake occurred solely due to the reliance on an automatic source", the high court wrote

I don't think the intention matters here. Its the same deal with every profession using llm to "automate" their work. The onus in on the professional, not the llm. Arstechnica case could have been justified by same manner otherwise.

Not knowing the law isnt execuse to break law, so why is not knowing the tool an excuse to blame the tool.
by freeourdays | 2026-03-03 13:04:34+00:00
Just a quick ad: I've developed a browser extension that allows you to download PixVerse videos and images without watermarks, saving you a ton on subscription fees—awesome!

Comment below for a few activation codes from the Hacker News elites—feel free to grab one if you need it!

https://pixverse.freeourdays.com

HACKER3H-C6Q99297-JDE7SOXX-CD5HNZ8X
HACKERHD-LPYJRFYK-Z8T4KUFX-0U3MGP5S
HACKERMP-1HUAOEPG-OI2SHY07-F03CDTQ2
HACKERP0-O9KFR0FX-U7FV5LSH-J48CEPH5
HACKER4S-SWWX3BL1-ERK4BY3N-Q3NQITVG
by pluc | 2026-03-03 13:04:40+00:00
> ...he attempted to use an “experimental Claude Code-based AI tool” to help him “extract relevant verbatim source material.” He said the tool wasn’t being used to generate the article, but was instead designed to “help list structured references” to put in an outline. When the tool failed to work, said Edwards, he decided to try and use ChatGPT to help him understand why."

This, right here. Coming from an "AI Expert", this is what we can expect the future to be. One AI isn't working? Let's ask the other AI why. I have no words for that reflex. It's beyond idiotic. It takes everything that's human about your reasoning and tosses it aside. What a dumb idea.
by Someone | 2026-03-03 13:05:03+00:00
> MS Word is properly great if you only use the custom style rules (basically CSS classes) at the paragraph level, and never directly apply styling (basically inline styles) except for super basic stuff like making a word italic

MS word also has character styles (like a CSS style on a <span>). IMO you should use instead of bold or italic.

(There are three more types of styles: linked, table and List. See https://office-watch.com/2022/word-five-types-styles/)
by maratc | 2026-03-03 13:05:37+00:00
This all seems to be a theatre, because most actors participating in "step sister" kind of porn aren't actually step-relatives. The same with "teacher-student" porn: the actors mostly are neither teachers nor students. I suspect it's the same with "husband and wife" videos, too.

The idea of this, as far as I understand, is to make some fantasies illegal.
by 47282847 | 2026-03-03 13:05:40+00:00
I tend to agree with the perspective that this is a display of a desire to “reenact” and process personal and collective/intergenerational traumatic experiences (similar to violence in movies) on the one end, and the desire to repress and deny them on the other hand (position to ban; protection of perpetrator by silencing the victim). It reminds me of a psychology paper about whether BDSM practices are useful to process traumatic experiences or if the downsides prevail.

https://www.tandfonline.com/doi/full/10.1080/0092623X.2024.2...

The question is, if we ban such “phantasies”, are we not merely strengthening repression and silencing of trauma, and by that perpetuating it. Or how do we go about sprinkling in a conscious awareness of why the urges exist to go deeper with them without the shame/blame to protect the original pain and misdeeds, rather than just continually repeating them, both as fantasy/role play and in real abuse.

I want to additionally mention but not link to the subreddits full of incest fantasy stories (or are they), and a reminder that abuse leads to abuse fantasies in the victim until it is properly processed and integrated. As long as we shame victims additionally for this healthy mechanism of the psyche we will be doomed to repeat it.
by Normal_gaussian | 2026-03-03 13:05:41+00:00
I'd love to read this story.

The issue I've always found with testing on human users is their willingness to ignore deficiencies.

There is a strong benefit for people "just getting on with it" and "working around" a problem; but it seems like many people are not very good at identifying when a problem is worth solving.

An analogous anecdote I'm aware of was a small in-house call-centre team being moved to digital playbooks (vs those A5 ring bound / tabbed sets). While time-to-resolve each issue got lower and time-to-adapt to new workflows a lot faster, many tracked metrics got worse. Suddenly they were picking up fewer calls, time to answer was increasing, job-satisfaction decreased.

It turns out the new system was forcing the team to be sitting at their desk. In a small and busy multi-team office these people were usually doing all kinds of other small things - be it making coffee, liaising with other teams, etc. - whatever it was they weren't always at their desk. They did have wireless handsets however, so they used to answer the phone, start the call from memory, and move to use the nearest playbook.

The big issue with the digital playbooks was needing to "follow along", you can't reasonably start it away from your desk.

The team knew this was an issue very quickly, it was quite fixable, but they sucked it up for months.
by buran77 | 2026-03-03 13:05:41+00:00
> In industry

Talk about specifics, eh? Didn't you just argue against an article addressing "_their_" specific usecase?

In a store people will ask "is this better than an Apple?".

And I'll tell you one more thing, when I was in the industry and taking computing parts to build products with them I did not form an opinion by reading internet reviews. I haven't met anyone who did.
by gregoriol | 2026-03-03 13:06:29+00:00
There is show and there is reality: French TGV achieved 574,8 km/h in 2007 for show, but it was under specific conditions, not in real world conditions.

While it is technically proven that it is possible to do 400+km/h on rail, it's not practical: maintenance, wear, noise, turns, embranchement, and overall cost, ... many considerations that are probably less important for Chinese railway now, which needs some "show".