skysight-inc/HackerNews huggingface dataset:
Show HN: Safe2PDF, a 100% local images-to-PDF tool, no uploads
Hey HN,

I built Safe2PDF, a browser-based offline-enabled images-to-PDF tool that never uploads your files anywhere. It runs 100% on your local machine, in your browser, using fully transparent open-source code. No cloud, no user trackers, no surveillance, no data collection. No ads either. Just a pure document conversion tool (images to pdf merger) that doesn't wasn't forged in the pits of hell.

Why?
In March 2025, the FBI publicly warned that many free PDF converters are malware fronts (https://www.fbi.gov/contact-us/field-offices/denver/news/fbi...). They harvest personal data, inject spyware, impersonate trusted brands like Adobe and ruin lives.

I read the warning and laughed bitterly, because I’d already spent months trying to solve that exact problem.
It started when I had to send documents to the government: sensitive, personal stuff for my wedding. I checked dozens of converters.
They all sucked.
They all uploaded my files.
They all felt off.
They smelled like phish.

They all promised my files get shortly thereafter deleted.
But why? Why do I need to upload my files to some server in who knows where, when I know for a fact all this can ne done directly inside the browser, with pure JS?
I’ve lived with crippling OCD my whole life. So when I say I couldn’t trust these sites with my files, I mean I literally couldn’t continue life until I solved the problem at the root.

So I set out to build my own tool.
One that doesn’t even have a backend for file handling.
One that never sees your documents.
One you don't need to pay
with money, or your privacy, or with your attention.

The code is transparent.
You can upload up to 1,000 documents (images and PDFs) at a time;
It's got live preview;
No ads;

What it does:
Combines multiple images into a single PDF
100% local. no files are ever uploaded
Built with trusted libraries: PDF-lib, Alpine.js, Sortable
Open source: https://github.com/amosWeiskopf/safe2pdf.js
Uses Plausible, not Google Analytics, for anonymous analytics only
Minimal frontend, no backend file handling at all
Form submissions go to Supabase (rate-limited by Cloudflare)

Who it’s for:
People who don’t trust "free" tools
Users with sensitive files (IDs, medical docs, legal papers)
People who want privacy without compromise
Anyone who wants a simple tool that works without selling their data

I know this isn't some grand AI breakthrough, but it solves a real, sharp, surprisingly unaddressed problem. And it does it cleanly.

I'd love your thoughts, especially from devs who care about privacy, OSS, or local-first tools. And if you've ever had that moment where you hesitated to upload a file, you are the person I made this for.

Thanks for reading, I hope you enjoy trying it.
Amos
As opposed to slop on medium and nautil.us constantly posted here lol. (or wikipedia)
I'm not asking what spam is, I'm well aware.

We are in a discussion about free speech absolutism. Somebody who says they are a free speech absolutist who supports spam filtering, needs to either justify why spam is not speech (which is my question, why would it not be speech), or acknowledge that they agree there are limits to free speech.

Or is your argument that if it is commerce it's not free speech? That would allow all commerce to be censored (and we just kick the can down the road, what is commerce).
Including https://xkcd.com/2128/
Yes: https://www.chessvariants.com/alphabet.html

My point not being that that is a link straight to the exact thing you've described, but that if you ask that site for all the variants it has with a blank search [1], the first 500 variants on file (give or take some administrative garbage) gets you the variants starting with a number and up to "Avalanche Chess" alphabetically... that is, you can't even get all the way through the As before the search bails out.

[1]: https://www.chessvariants.com/index/mainquery.php
Tyler here, dev on cabinaudio.com

Super excited to be able to share our crazy idea/website with everyone here. Not too much to say about it other than: go try it out!

However, I thought it would be interesting to go into why this approach would work.

First of all, what are we doing?
We’re trying to make different instruments sound like they are coming from different places in space. There are two ways we’re doing this:
1. Make instruments that are panned left vs right sound more spread out. This is making the soundstage of the headphones “wider”.
2. Make instruments that have more bass vs more treble sound more spread out. This is what’s new - we’re adding a “height” dimension of separation where higher pitched instruments (hi hats, cymbals) actually sound like they are coming from above you, while lower pitched instruments (kick drum, bass) sound like they are coming from below you.

What does this accomplish?
It’s easier to hear each instrument when they are spatially separated. This technique also happens to make the instruments sound bigger. We like bigger. Just as it’s more engaging to watch a movie at a theater than on your phone, it’s more engaging to listen to music when it seems to fill more space (this is also why we like to listen to music louder - it actually sounds bigger).

Why does it work?
Our spatial processing of sound is pretty primal. Evolutionarily, we needed hearing to avoid predators. To avoid predators, we needed to know where they were. So the main purpose of hearing is figuring out where sounds are coming from.

Only recently have we evolved to process language. In other words, the process for extracting meaning from sound came after the process for figuring out where sounds are coming from.

This means (and this is 100% my own crazy conjecture) that our brain localizes sounds before it tries to understand them. When we hear a mix of sounds, our brain spreads them out into space, and then tries to decode what they mean. So if two sounds are separated in space, it’s pretty easy to understand each sound. But if two sounds overlap in space, our brain has to do extra work to separate each sound - and has less processing power leftover to understand each sound. And (more crazy conjecture) I think that our enjoyment of music comes from understanding the patterns between sounds.

When we make it easier to hear and understand these patterns, we get more enjoyment from music - i.e. it sounds better.

How is this different from spatial audio?
Size. By spreading out low and high frequencies, we don’t just separate instruments, but we stretch them out. They appear larger. For whatever reason, this is really engaging.

In my limited experience, spatial audio makes the instruments sound separated, but it also makes them sound small and washed out. It can be a cool effect, but its current state is so so so far from its potential. We’re absolutely planning to extend our work here into a spatial audio format, and are extremely excited about the possibilities.

I could write essays on this - happy to answer any questions!
It was interesting to compare my expectations of who would be high ranking on this list versus the actual rankings. Cool project!
Guilty people go free all the time, as long as they have enough money. We live with the guilty people free.

The least the system could do is more to guarantee the innocent person being free too.
this part: "key to making the system work effectively and sustainably".
The 32b sounds like it has some useful small tweakers. Tweaks to make output more human friendly, better mathematical reasoning, better fine-grained understanding. https://qwenlm.github.io/blog/qwen2.5-vl-32b/ https://news.ycombinator.com/item?id=43464068

Qwen2.5-VL-72b was released two months ago (to little fanfare in submissions, i think, but some very enthusiastic comments such as rabid enthusiasm for handwriting recognition) already very interesting. Its actually one of the releases that kind of turned me on to AI, that broke through some of my skepticism & grumpiness. There's pretty good release notes detailing capabilities here; well done blog post. https://qwenlm.github.io/blog/qwen2.5-vl/

One thing that really piqued my interest was Qwen HTML output, where it can provide bounding boxes in HTML format for its output. That really closes the loop interestingly to me, makes the output something I can imagine quickly building useful visual feedback around, or using the structured data from easily. I can't imagine an easier to use output format.
The Universal Transverse Mercator (UTM) geographic coordinate system
I don't understand, (eventually) you can read the documentation yourself or you can chat with a bot / agent that has read the documentation. Either way, not much happens if there is no documentation, no? (Never mind, that launching with minimal documentation is still a thing even for giant projects... - and a good reason to drop them as soon as we notice.)
Does anyone know if it’s possible to disable autopilot/mdm with this?
I think it's more expensive, and I'm not sure it can absorb vapor (not liquid)

It's fun that it has the same refractive index as water, so if you put clear ones in water they disappear. Then you ask someone to put their had in a bowl with them for a surprise.
> He talks all the time about how he hates wokeness and woke people.

Lol you realize I have eyes right? Did you even read this?

"For me, seeing actual injustices against minorities makes me more woke, and seeing woke people be stupid and unnecessarily combative makes me less woke." -- yeah, really oozes hate.

It's clear what this is: you find any hint of criticism for this pet issue heretical.
BYD sales soar as Tesla continues to struggle in Europe
"Stephen Glenn Charles Hilton (born 25 August 1969) is an English and American political commentator, former political adviser, and contributor for Fox News Channel. He served as director of strategy for the British Prime Minister David Cameron from 2010 to 2012. Hilton hosted The Next Revolution, a weekly current affairs show for Fox News from 2017 to 2023. He is a proponent of what he calls "positive populism" and a strong endorser of U.S. President Donald Trump."

https://en.wikipedia.org/wiki/Steve_Hilton
Which is a problem and perhaps there needs to be big "resets" of karma when you turn into a cabal. Wikipedia wouldn't work if it was run mostly by people like this, and I am sad to see it going in that direction too.
I kept getting confused why I'm not getting any points. You really should give the other units the other color (black), o thought they were there too effectively block the spaces, not to be able to capture them for points.
Have a complete different experience. As a physical major, did a famous Millikan's oil drop experiment. Am a terrible experimentalist (went on to do my PhD in theoretical physics), so we got a charge of about 1/3 of the charge of an electron.
Now, as I did not get a Nobel prize, I did not actually measure the charge of a single quark, but still got good enough grades for this study.
A good place to start would be to not abruptly fire hundreds of deportation judges and staff. It's absurd to claim that this administration is actually trying to solve a problem, their actions clearly show that they are not. These deportation circus events are about terrorizing people and make some alt-right scumbags on the internet happy.
But using "likely" is obviously AI in this context, or at least it's really, really shitty reporting.

This is supposed to be a news article, not someone who's hypothesizing about something that could have been. I mean, it either required a great deal of manual labor and technical knowledge or it didn't - no guessing should be required. If the author doesn't know, they can do proper research or simply ask the subject.

FWIW this article didn't immediately scream AI to me either, until the commenter pointed out the use of "likely". When you think about it, it absolutely becomes a fingerprint of AI in this context - it's not just that "likely" anywhere means it's AI.
Update to the Unfair advantage policy (April 2025)
Would you really call it pedantry to object to someone saying "for an even better cheese pizza, try sprinkling pepperoni over the top"?
That's quite a beefy workstation you got there!
> You make it look like it's a good thing to be able to express it.

No, just that this pre-generics Go, and backwards compatibility is taken seriously.
I agree this seems overly principled to me.

I recall a DSP class where there was an exam with a question like (not exactly this):

> What does the following code print?

> `printf("Hello, world!");`

If you responded with:

> Hello, world!

...which - of course - the whole class did, you got the question wrong.

If you responded with:

> "Hello, world!"

...which is actually not what that would print, you got the question right.

A small band of us went to the professor and noted that, in fact, `printf("Hello, world!")` does not print the quotes. But he wanted us to show that it printed a string, and we denote strings by quotes.

This was something that we learned to do just for him - all strings had to be enclosed by quotes, to denote that they were strings. As far as I'm concerned, it served no practical purpose; we never had to differentiate strings like "Hello" from ['H', 'e', 'l', 'l', 'o', 0] or other representations.

A better example of how this could go - and not one that had anywhere near the same stakes - was a question on the entrance exam for my college radio station:

> What is the airspeed velocity of an unladen swallow?

I got this question right by answering, "Ni!"

(edit: formatting)
OpenAI had a publicity cycle around how tuned their image generator is for this particular style in the same week that google released a major rev for Gemini. That kind of social media dominance against a major competitor is incredibly valuable.
Socky: An AI Assistant for MetaFilter
MetaFilter is finally embracing The Future: starting today, every page on MeFi will support Socky the Sockpuppet, your personal AI assistant ready to enhance your browsing experience with randomly generated commentary and deep-cut references that may or may not be relevant to whatever you're doing.
Yeah? What "life lesson" does the dean think you're going to learn from that? That authority figures cannot be trusted because they will hurt you with bureaucratic stupidity. Does the dean, as an authority figure, really want that to be the lesson you learn?
The Xbox brand for awhile. Taylor Swift these days for you know, speaking her mind as a woman, etc.
The packets look like the little salt packets that come with fast food, and the stuff inside looks kind of like salt.
Feature or Product?: Vector Databases
Fistful of quarters was the subtitle of King of Kong
> (AI loves to not "commit" to an answer and rather say maybe/likely)

Well fuck, I might very well be an AI, then ;)
You might want to add these HTTP headers to help reduce the server load from your complex web application:

Cache-Control: public, max-age=2147483647, immutable

Expires: Wed, 31 Dec 9999 23:59:59 GMT
Well, Zig toolchain makes it trivial in any supported environment (so in my case on macOS)
Looks at counter... 14 Billion certificates. How do you even keep that site manageable, must be close to 100TB of certificates data alone. Are you running trigram index for the domain wildcard search, does that not kill your performance with so many domains?
Interesting, and I think that is not specific to Go, other mark-and-sweep GCs (Java, C#) should behave the same.

Which means that creating short lived objects (like iterators for loops, or some wrappers) is ok.
a fork/rewrite: https://github.com/chrisbenincasa/tunarr

(not an endorsement, I just found it digging around.)
great team and killer traction
Railway | Product Eng (full stack), Developer Relations, Infra (Platform) eng, Infra eng - Data Centers| REMOTE (International) | https://jobs.ashbyhq.com/Railway?utm_source=DayMzWzJ0P

Tired of trying to beat kube into shape? Does writing YAML to ship code fill you with utter dread? Dream of a future where deploying software is simple, and you don't need an army of infrastructure engineers to build that perfect janky bash script™ to make life easy?

We're Railway, and we think infrastructure can be better. So far we've built out a platform loved by hundreds of thousands of users who simply tell us "Give me Postgres", "Deploy this repo", and we make it happen

Fair warning! The problems are complex: home-rolled hypervisors, cut-above container orchestration, over/under/whateverlay networks, virtio device drivers, edge proxies, IAM that doesn't suck, kitchen sinks - we need to build it and we're looking for likeminded individuals who think this stuff is fun.

Four open roles (apply below!):

+Product Engineer (full-stack):
-Apply here: (https://jobs.ashbyhq.com/Railway/6ddcfe47-6cce-469b-ba6d-4f0...)
-Blog post about the team: (https://blog.railway.app/p/team-spotlight-product-engineerin...)

+Developer Relations Engineer:
-Apply here:(https://jobs.ashbyhq.com/Railway/fe33d49c-3502-4d73-80fc-c2c...)

+Infrastructure Engineer:
-Apply here:(https://jobs.ashbyhq.com/Railway/b8072f95-043f-404d-a313-f0b...)
-Blog post about the team: (https://blog.railway.app/p/team-spotlight-infrastructure-eng...)

+Infra Engineer - Data Centers:
Apply here: (https://jobs.ashbyhq.com/Railway/541836a1-6d3f-47bf-845f-5f4...)
Blog post about the team: (https://blog.railway.com/p/data-center-build-part-one)

See you soon, and happy shipping.
SEEKING WORK | Remote | New Zealand

Seeking: Strategy, Technology and Architecture advisory and consultancy to startups, scaling teams or established companies / organisations

Location: New Zealand, willing to support APAC, APJ, Australia, New Zealand and West Coast US remotely

Remote: Yes

Willing to relocate: No

Technologies: See below.

Résumé/CV: https://architectfwd.com/about

Email: hackernews at architectfwd dot com

Need a consultant, strategic thinking, architecture or tech advice, coaching/ mentoring for you or your team?

How could we work together? An hour, a couple of hours or something more regular but flexible/fractional? I am looking for part hours, or retainers, or work toward fully moving into a consulting / advisory capacity

Let’s figure out how to work together.

—

I have 20+ years solving business problems and maximising opportunities through technology in a variety of industries internationally.

My core skills are in strategy, enterprise architecture, technology architecture, consulting and advice, agile, team leadership, coaching and mentoring. Can do operating model work.
That’s a great, nuanced view! Thanks for sharing!
A man powers home via solar panels and a thousand old laptop batteries. Makes a big difference! My first thought on seeing headline here was confusion, I thought maybe he was using residual charge from used laptop batteries or something.
this happens in "real life" as well

i spent a bunch of time trying to figure out why my 74LS20 wasn't being a dual 4-input NAND gate

turns out that was a date code, and it was some other chip entirely

1974 was a terrible year for 74xx series TTL chips

yes, i am old :-)
:/
Yes, I was agreeing with the parent post, which disagreed with the grandparent post:

"Your view about each generation tending to fully 'break' with their parents, in a way *strikes me as particularly narrow*. "

I then added examples of vast populations where sons don't isolate from their parents.
free market and free speech until it affects them. The human condition.
The Nvidia DGX Spark Is a Tiny 128GB AI Mini PC Made for Scale-Out Clustering
I voted for the "Leopards eating faces" party, so I'm pretty sure I'm good. But thank you for your concern!
OnlyFans Sued After Guys Realized They Might Not Be Talking to Models
I use dessicants for 3D printing. I've heard you can dry them out safely by just microwaving them for a few seconds. I wonder if that's good enough.
I never even heard of this website/magazine and even they have a Paywall.
Probably because they look like candy, and they're packaged with food a lot?

Even if not packaged with food, these sachects left on the table while unboxing, e.g. a pair of shoes, might entice kids... And it's just easier to print "DO NOT EAT" rather than have separate production lines for "for shoes" and "for food".

Although, from the description, it seems they're perfectly safe (because they're inert) to eat...
That number was from 2016 is useful in determining if it was worth it but not useful if it will be worth it staring today as the number has changed in the intervening 9 years. The number will keep changing with an estimate of $80 kWh by 2030.
Brilliant.org | Software Engineers (especially Android) | Remote (North America), SF, NYC | Full-time | $155k — $230k | https://brilliant.org

Brilliant is building world-class interactive learning experiences that combine challenging problems, compelling narratives, and delightful visual storytelling.

We're hiring for a number of engineering roles to help craft the next generation of interactive learning and change how the world learns.

Engineers at Brilliant think about both "building the right thing" AND "building the thing right" while pursuing high standards of excellence for ourselves, our product, and our codebase.

If you're energized by the prospect of doing the best work of your career and changing how the world learns alongside the most talented peers you've ever worked with, you can learn more and apply here: https://brilliant.org/careers.
With millions and millions of those things around I’d guess quite a few get ingested accidentally and we don’t hear of them causing problems. It must be pretty safe (well as safe as eating a small amount of sand is).
I guess I'll contribute my best prank.

In the late '00s I was working at a small ed tech company that had recently moved into a nice new HQ with a large kitchen. They got this pretty fancy popcorn maker and the IT team put it together (I was a dev, so I was not on this team). People kept burning the popcorn, so it became the office/facilities manager, Tim's duty to make the popcorn (which he was not exactly happy about).

I was in the IT closet looking for some cables and noticed a bunch of spare networking equipment laying around. So I grabbed an old four-port switch, an external wifi antenna, and some cables, then I stayed late one night and "installed" them on the popcorn machine in a manner that was surprisingly convincing. IoT Popcorn machine before IoT was a thing.

I also wrote up a script that would connect to our Outlook server, and send an email to Tim, "FROM: TECH-POP <techpop-machine@companyname>" with "SUBJECT: TECH-POP IS READY TO BE REFILLED" and some techy-sounding status updates in the body of the email. I even kept track of the number of popcorn bags remaining in the cabinet.

Once every few hours, I'd run the script, and Tim would dutifully get up and make some popcorn. After about a day, I ran the script and heard loud, "GOD FUCKING DAMNIT", and the slamming of a chair. Tim went over and ripped all of the networking stuff off of the popcorn machine and threw it in the trash. He then paid a visit to the IT manager to clarify who it was that thought it was his job to "refill the fucking popcorn". The IT manager, with a completely straight face, gets up and I see them walking my direction.

They get to my desk, and the guy is coming down from being piss-pissed. His face is all red and eyes are watering. The IT manager tells him, "it was this fool's idea." They laugh and say it was a funny prank and Tim playfully grabs my collar and shakes me a little.

After that, I get a message from the IT manager to avoid pranking Tim in the future.