DevIdiot!
How I built a modern UI5 component library for SAP Fiori on-premise
The problemSAP Fiori developers on-premise are stuck with UI5's built-in components. They're functional, but the UX feels dated compared to modern web apps β and migrating to BTP just to get a better UI isn't always an option. What I builtUX7 is a custom UI5 component library with 41+ controls that drop into any existing Fiori project via CDN. No BTP, no migration, no breaking changes to your existing app. How it works1. Register in Component.jssap.ui.define([ "sap/ui/core/UIC
Making Pretty-Printed JSON Readable Again in JavaScript
Most JSON serializers give you only two choices:compact machine output:{"a":{"b":{"c":"abc"}},"x":{"y":{"z":"xyz"}}}or fully expanded βpretty-printβ:{ "a": { "b": { "c": "abc" } }, "x": { "y": { "z": "xyz" } }}I wanted something in between: the first is hard for humans to scan, and the second becomes extremely verbose on real-world nested data. The IdeaI wrote a small JavaScript module called jsonfold. Instead of replacing JavaScript's JSON serializer, it works as
FPS.cob: A first person shooter in COBOL
<a href="https://news.ycombinator.com/item?id=48491486">Comments</a>
How to Process Sensitive Data Without Leaving Your Browser
The ProblemEvery time you paste a JSON payload into an online formatter, upload a CSV to a converter, or use a web-based password generator, your data travels to someone else's server. For personal projects, that might be fine. But when you're working with:API keys and tokens in config filesCustomer PII in CSV exportsInternal API responses with sensitive dataDatabase dumps that need formatting...you're trusting random websites with data that could cause real damage if exposed. The Bro
Coding Program js
5.Multiples of 3 and 5 js program: for (let i = 1; i <= 100; i++) { if (i % 3 === 0 && i % 5 === 0) { console.log(i); } }This use for program == Compares value only (type conversion happens) == loose equalityThis use for program === Compares value and data type (no type conversion). === strict equalityOutput:6.Multiples of 3 or 5: for (let i = 1; i <= 30; i++) { if (i % 3 === 0 ||
MiMo Code Is Now Released and Open-Source
<a href="https://news.ycombinator.com/item?id=48490826">Comments</a>
Nextcloud Hub 26 Spring: Built together, designed for the future
<a href="https://news.ycombinator.com/item?id=48490715">Comments</a>
A Simple Login Bug That Touched Four Layers of the Stack
I recently spent several hours debugging what appeared to be a straightforward authentication issue while building a new application.The symptom was simple:Enter an email addressClick Sign InReceive a valid JWTGet redirectedImmediately end up back on the Sign In pageAt first glance, this looked like a classic authentication bug.It wasn't.What made this issue interesting was that it touched four different layers of the stack:FastAPI JWT generationBrowser storageReact ContextRoute protectionAnd th
Design Email Templates Once. Send With Any ESP
If you've ever migrated ESPs, you know the pain.You have templates living in three different places β your ESP's drag-and-drop editor, a folder of MJML files in your repo, and a Figma doc your designer swears is the source of truth but hasn't been updated in four months.Then someone says "we're switching from Mailgun to Resend" and suddenly you're rewriting every single template from scratch.I've hit this wall too many times. So I built Maildeno. What is Maildeno?Maildeno is a headless emai
MapComplete β Contibute to OpenStreetMaps
<a href="https://news.ycombinator.com/item?id=48490532">Comments</a>
Vue to React Migration: Why Runtime Wrappers Hit a Ceiling
If you have ever loved Vue's Composition API and <script setup> but still had to ship a React codebase because of platform or team constraints, you already know the pain: the code is runnable, but it feels awkward, brittle, and expensive to maintain.That tension is exactly what VuReact is designed to solve. VuReact is a compiler toolchain for migrating from Vue to React β and for writing React with Vue 3 syntax.In this post, I want to answer a very practical question:Can we write with fami
US-Canada border library gets new Quebec-only entrance
<a href="https://news.ycombinator.com/item?id=48490245">Comments</a>
Next.js 14: 'Could not find the module in the React Client Manifest' β The Real Cause Nobody Tells You
The Dreaded 'Could not find the module in the React Client Manifest' ErrorIt started, as these things often do, with a failed deployment. I was pushing a routine update to aicoreutility.com, running on my trusty, albeit small, single VM. The build process, handled by Next.js 14, choked. The error message was cryptic: 'Could not find the module in the React Client Manifest'. This isn't a common error you see in tutorials, and the usual Stack Overflow answers felt like grasping at straws.My
How We Localized a Korean Fortune-Telling App into 9 Languages (Lessons Learned)
We run a small web app that does Korean Saju β four-pillars fortune reading β plus compatibility and daily fortunes. It started as a Korean-only product, because that's where the tradition lives. Then the analytics came in: most of our visitors were not in Korea. The US was our largest traffic source, with Japan, Taiwan, and Mexico behind it. They were landing on a fully Korean interface and bouncing.So we localized it into nine languages: Korean, English, Japanese, Simplified Chinese, Tradition
Korean Zodiac (12 Animals) Explained for Developers Building Culture Apps
If you ever build anything touching East Asian culture β a horoscope widget, a New Year campaign page, a localized greeting card generator β you will eventually be asked to compute someone's zodiac animal. It looks like the easiest feature on the backlog: twelve animals, one modulo. I thought so too, until I shipped it in a Korean fortune-telling app and learned that the modulo is the only easy part.This post covers the data model, the calculation, and the two places where naive implementations
Detecting WebRTC IP leaks in the browser: how it works and how to test it
WebRTC is a powerful browser API for real-time audio, video, and data communication. But there's a privacy trap hiding inside it: even when you're behind a VPN, WebRTC can expose your real IP address to any webpage that asks.This is not a theoretical risk. It's actively exploited by fingerprinting services and leak-check tools. Let's dig into exactly why it happens and how to detect it with JavaScript. Why WebRTC leaks your real IPWhen WebRTC establishes a peer-to-peer connection, it uses a
How to Add Electronic Signatures to PDFs in the Browser (Vue 3 + HTML5 Canvas)
A client emailed me a contract last week. I needed to sign it and send it back. The usual options? Print it, sign with a pen, scan it back in. Or upload it to some online tool that processes it on their server.Neither worked for me. So I built client-side PDF signing into my toolkit.Here's how we add electronic signatures to PDFs entirely in the browser using Vue 3, HTML5 Canvas, and pdf-lib. Why Client-Side?Most online PDF signing works like this:Upload your PDF to their serverThey render
Workers are spending over 6 hours a week botsitting AI, fueling job frustration
<a href="https://news.ycombinator.com/item?id=48490057">Comments</a>
Work / Professional Life
Power Dressing: How Shapewear Can Boost Your Professional ConfidenceIn the professional world, how you present yourself matters. Studies have shown that what you wear affects not only how others perceive you, but also how you perceive yourself β a phenomenon known as "enclothed cognition." When you feel confident in your clothes, you stand taller, speak more assertively, and perform better. This is where Nebility comes in. The right shapewear can be the foundation of a powerful professional ward
Open Reproduction of DeepSeek-R1
<a href="https://news.ycombinator.com/item?id=48489917">Comments</a>