MurphyA/hacker-news huggingface dataset:
Show HN: Violit – Fine-grained reactive Python Web UI (Streamlit-alternative)
by dopeflamingo | 2026-02-15 17:51:12+00:00
Hello HN,

I am a developer working on open source in my spare time.

I built Violit because I love the simplicity of Streamlit but hit performance bottlenecks due to its execution model (re-running the entire script on every interaction). I also explored NiceGUI, which is excellent, but found it difficult to customize beyond its default Material Design look.

My goal is to empower Python developers to build beautiful, fast full-stack applications without needing React or a separate frontend team. While it is still early days, I hope Violit can eventually serve as a pure-Python alternative to complex stacks like Django+React for many use cases.

------------------------------------------------

Key Technical Details:

- Fine-grained Reactivity: Unlike Streamlit, Violit uses contextvars to track dependencies. Updates are surgical—modifying only the specific DOM node that needs to change, rather than re-executing the whole script.

- Hybrid Engine: It supports both WebSocket (for low latency) and HTMX (Lite mode) depending on your needs.

- Styling & Theming: I wanted to prioritize aesthetics. It moves away from rigid Material Design, supporting easier custom theming (currently ships with +20 presets).

- Multi-Platform: Apps can run as a web service or be packaged as a desktop app using pywebview without code changes.

It is currently in alpha (v0.1.12). I’ve included a "Blog Construction" example in the repo to demonstrate that it can handle more than just simple dashboards.

I’m curious to hear your thoughts on this architecture.

▶ Repo: https://github.com/violit-dev/violit

▶ Blog Example: https://github.com/violit-dev/violit/tree/main/examples/2_vi...
by upboundspiral | 2026-02-15 17:51:21+00:00
I agree that it would take something catastrophic for people to move off of the service they currently use. I disagree however on the premise that the move will be from one proprietary service to another. Us tech savvy people can and should self-host the things we believe can be valuable - now or down the line.

I'm not on mastodon but I've perused some threads and if it brings value to people great - the fact that it was there when twitter imploded means some portion of the population actually moved to it and now uses it. It provided some real value to people.
by wahnfrieden | 2026-02-15 17:51:25+00:00
Clothing has a huge profit margin (when manufactured overseas) especially at the higher end (for brands which do not invest in local production, which is most, because it is also hard to beat Chinese quality). It's better for these brands to over-produce on some items and lose the low-cost inventory, than to under-produce and not meet market demand, to not offer a range of sizes and varieties to meet individual taste, and not achieve wide distribution that's necessary to grow market demand. That's why regulation is needed here.
by AquiGorka | 2026-02-15 17:51:42+00:00
The infra intended here exposes TCP and/or UDP connections, it is protocol agnostic; so end-user apps can use smtp, http, activity pub, at protocol, etc.
I am going for an infra that can scale by leveraging the DHT as DNS and p2p for end user apps/apis.

(Edit typo)
by myself248 | 2026-02-15 17:52:30+00:00
And imagine if telecom had topped out around ISDN somewhere, with perhaps OC-3 (155Mbps) for the bleeding-fastest network core links.

We'd probably get MP3 but not video to any great or compelling degree. Mostly-text web, perhaps more gopher-like. Client-side stuff would have to be very compact, I wonder if NAPLPS would've taken off.

Screen reader software would probably love that timeline.
by kmeisthax | 2026-02-15 17:52:40+00:00
Related note: aren't Louis Vuitton bags being made so crap nowadays that even their own anti-counterfeiting staff can't tell what's real and what's not? I remember hearing of someone who made wallets out of discarded LV bags and got harassed for it by the company.

My personal opinion is that the business model of selling status items - specifically those which only have status because of an artificially limited supply they control - is inherently predatory and should be restricted. Not because I'm the morality police and want to stop people from buying a bag that says "I spent $2000 on a bag", but because there is nothing that stops the company from cost-reducing that to oblivion. If you are going to sell a $2,000 bag, it should be marketed on quality, not a cult.
by pinkmuffinere | 2026-02-15 17:52:46+00:00
I want to be as polite as possible, but explain the confusion that timerol was experiencing, just in case it was unclear. Because the article's focus is about the oldest "sophisticated drilling tool", and your comment said "Indian carpenters always had ...", the implication is that you're disagreeing with the article being discussed. The information you share is interesting, but it's slightly off topic from the main point of discussion (ie, the age of sophisticated tooling). You can avoid confusion like this by explicitly acknowledging when you're going to go off-topic. Eg, you could say "Not related to the age of the tool, but I saw similar tools used in India -- Indian carpenters always had..." I hope that explanation is polite and maybe helpful :). Apologies if I over-explained.

Somewhat relevant: https://en.wikipedia.org/wiki/Cooperative_principle
by darkwolfcave | 2026-02-15 17:53:19+00:00
I run endlessh-go (https://github.com/shizunge/endlessh-go) as an SSH tarpit
on my VPS. It traps bots by slowly sending an endless SSH banner and reports
metrics to InfluxDB.

I wanted a fun way to see what it catches, so I built a fishing game around
it. Every bot gets classified as a fish species based on trap duration — from
Plankton (< 30s) to Leviathan (14+ days). There are achievements, daily
challenges, a treasure system with security tips, and IP intelligence via
Shodan/AbuseIPDB.

Requires: endlessh-go + InfluxDB 2.x (as data source), then just
`docker compose up -d` and it handles the rest.

Stack: Django, Celery, PostgreSQL, HTMX. Fully self-hosted, no external
resources loaded (GDPR-friendly).

Happy to answer any questions!
by otterley | 2026-02-15 17:54:40+00:00
To say that something is a belief or should be and to say that something is a fact are two different things. When you say the latter, you are putting yourself at a significantly greater risk of being incorrect. You don’t have to be a lawyer to know this.

HN is a forum of written communications. Clarity and accuracy are essential skills for participating effectively in such places, and are the responsibility of the author.
by jamesmcneill | 2026-02-15 17:55:07+00:00
Wow, so cool! I did not know Starflight was written in Forth.

Starflight was my first experience with game patching. When I got my copy it would not run on my PC. I believe it was because I had an EGA graphics adapter. I wrote a letter explaining my problem and mailed it to Electronic Arts. They mailed a letter back. It said there should be a program on my computer named debug.com, and gave instructions about how to load the Starflight executable in it, replace a couple of bytes, and save it out. I followed the patch instructions and it got the game working! After which I spent many happy hours with my friends exploring the Starflight universe.
by jon-wood | 2026-02-15 17:55:48+00:00
> But I didn't think they would use the video in a way I didn't personally approve after giving it to them!

This is exactly the sort of thing there should be legislation for. To a somewhat weaker extent than I’d like this is what GDPR and friends covers, the law says that companies must state what data they’re gathering and what purposes they’re gathering it for. If they overreach then they can be fined into oblivion.

In practice this is not as strong as it should be, broadly companies can and do basically go “we’re collecting all your data for whatever purpose we like” and get away with it, but they do at least think carefully about doing so.

There’s no reason we can’t force providers of cloud backed devices to treat your data with respect, rather than thinking of it as residual income they’re leaving on the table if they don’t also sell it to third parties for data mining.
by Sol- | 2026-02-15 17:55:49+00:00
Seems like policy ripe with unintended side effects. At the very least, it'll likely raise prices for consumers because the companies aren't allowed to manage their inventory as efficiently as they wish.

Now of course this might be a totally acceptable price to pay, I'm not necessarily arguing against it. It will just be conveniently omitted from public communications on the topic by the EU. For regulators, there never are tradeoffs, after all.
by rerdavies | 2026-02-15 17:55:51+00:00
Sure. That's an interesting example. Does the cost of the extra instructions completely disappear in an 11 cycle branch stall that occurs when the ret instruction executes? Maybe. Or perhaps the pipeline is able to pre-fetch the return address and execute the memory fetch concurrently with the three ALU-only instructions. I don't honestly know. But I do think it's unwise to make performance claims without actually profiling the code.

I will concede that the generated code looks horrible. But it is not immediately clear to me that the generated code is significantly actually worse. Has the compiler produced ugly code that is actually not worse than the pretty code, once the execution pipeline model has been applied? Maybe. Conceivably. A problem that can be simply solved by profiling the code.

My personal experience with hand optimizing code on modern Intel processors is that things that one intuitively expects to improve execution speed don't necessarily produce actual performance improvements. And that one should never make such optimizations without careful profiling of the results.

True I suppose that there is going to be a vanishingly tiny penalty for cache pollution. But if the performance of your performance-critical code section depends on how often cache-misses occur, then you have a problem that's between one and two orders of magnitude worse than anything you're going to get from instruction optimization, given a 7 to 100+ cycle penalty for a cache miss, and you should probably be looking for other ways to optimize the code.

When benchmarking, cache misses are never going to happen. And I think the same is broadly generally true for actual performance-critical code in actual use too. If the code is truly performance critical, then its unlikely that cache misses will occur. Or unlikely that a very occasional cache miss isn't interleaved with a hundreds of cache hits. And if they do occur, the solution will to be to optimize data access patterns, not produce better code optimizations.
by dlcarrier | 2026-02-15 17:55:57+00:00
I buy mostly from liquidators, where everything is sold as-is, but that doesn't stop end users from trying to make a claim, so many manufacturers often have methods for marking items that are not covered by the warranty. For example, Ryobi brands the items with a plastic welder, leaving a tell-tale wavy mark.

A robust liquidation market does a lot to prevent waste, and it reduces the cost of living for those who participate, so finding ways to allow products to be truly sold as-is is vital, otherwise the next most logical option is to put those items in a landfill.

It's also important that there's no legislative hurdles to seelling items as-is, or there may be no legal way to sell a salvage products without completely overhauling them, which is usually not cost effective.
Show HN: LaTeX Salon, a Trystero-based multiplayer LaTeX scratchpad
by ashivkum | 2026-02-15 17:56:36+00:00
Hello HN!

When I was an undergrad during the pandemic doing math homework in a group chat, I always wanted a quick way to type out an argument and share it without necessarily starting a new LaTeX document and compiling it. I also wanted a way to collaborate that was lower friction than creating an Overleaf document. This vibe-coded website is my attempt to satisfy this fairly niche desire.

This is a Trystero-based multiplayer LaTeX workspace for temporary collaboration: quick math sessions, office hours, an alternative to trying to communicate a long exact sequence over text etc.
It’s intentionally not a full document platform.

What it does:

- Live KaTeX preview while typing (no compilation required)
- Real-time peer-to-peer sync in shared rooms (WebRTC via Trystero) with no login, and with shared carets and presence pills à la Google Docs
- No app backend stores documents; multiplayer state is shared only among peers in the room.
- Mixed mode (text + math) and Classic mode (all math)
- PNG/PDF export
- Matrix/table/cases helpers + custom \newcommand shortcuts
- Preliminary mobile support

What it isn’t:
- Not for long-term document management/versioning
- Room codes are lightweight and unauthenticated (treat them as temporary shared secrets)

There's also a single-player mode: latex.salon/local. In practice, I mostly use this for writing up problems and solutions for my discussion sections.

Source: github.com/ultravioletcatastrophe/LaTeX-Lab

Feedback welcome!
by gtowey | 2026-02-15 17:56:48+00:00
People before Facebook found themselves in exactly the same situation as you and managed to survive.

People have become dependant on the convenience of these tools and become, for lack of a gentler word, lazy. Moreover we have this current sense of entitlement -- that all of these details of modern living should be done for us. Having our social circles organized and maintained for us, having infinite entertainment a button press away, food delivered to our door on a whim, cars to take us anywhere always minutes away.

People survived just fine before these conveniences, it just too a bit more effort. You could collect your friends contact information, keep an address book, call them up from time to time. It's not perfect, but it works and starts to break the silicon valley tech giant dependence.

Personally I find adding friction to these processes has actual value. When you slow down and have to put a bit more effort in, it helps you to evaluate what is important, and what truly matters. You prioritize, you make tradoffs. The process IS the richness in life. We all don't need to be jet setting globetrotters to whom paris might as well be New York or london or munich, while robots manage our social lives. There is no substitute for actively working to build a community where you are. You have to put the effort in, and in a single generation we have lost so much of it. But we can get back there again if we try.
by FiloSottile | 2026-02-15 17:57:19+00:00
I would love to learn more. What's the package integrity story of Java and .NET?

All I can find are documentation about artifacts on e.g. Maven Central being signed with any PGP key, which can freely change across package versions. If that's correct, it's no more than a convoluted checksum (without anything resembling the Checksum Database and its transparency log). If that's not correct, I am very curious what the workflow is when a package author loses a key.

Or, more concretely: what's stopping Maven Central from serving a fake version of someone else's package to a targeted victim?
by WalterBright | 2026-02-15 17:57:32+00:00
> Imported secondhand clothing is sold at prices that local textile producers cannot compete with. As a result, local garment industries collapse, unable to survive against the flood of cheap imports. Hence, jobs are lost in manufacturing and design, stifling innovation and economic growth.What was intended as charity often becomes a form of economic sabotage.

Isn't that another version of the Broken Window Fallacy? Destroying things to create jobs re-creating them is a net loss.
by crims0n | 2026-02-15 17:57:49+00:00
What a legend. The Dreamcast in particular was a work of art too ahead of its time to be fully appreciated. It was the first console with support for broadband, way back in 2000. For context, AOL dialup peaked around this time. Spec-wise, it traded blows with the PS2 (better GPU, slower CPU) despite releasing around 18 months earlier.

The VMUs that plugged into the controllers were another highlight capturing the zeitgeist at the time, where everyone was into Tamagotchis and other little LCD toys. Everything about that console was a joy, shame it didn't do better in the market.
by uyzstvqs | 2026-02-15 17:57:54+00:00
It'd be best to create a standard for this using wallet apps. You can obtain an age certificate from any trusted provider (decentralized chain-of-trust similar to TLS CAs), which you can then load into any wallet app of your choice on any OS, and use it with any online service which supports the standard. This should use anonymous, unlinkable(!) proofs, with the only certified data being `is_over_age`.

Though I'd prefer the way proposed by Mark Camilleri Gambin (EU politician). Have parents enable Child Mode during device setup, then expose `isMinor = true` to all websites and apps, require a parental control PIN to disable. This is a much better and cleaner solution. Requiring age verification of all adults gets it backwards.
by throw3e98 | 2026-02-15 17:57:55+00:00
And in pre-industrial societies, peasants (almost entirely women, ranging from children to the elderly) commonly spent around 100 hours of labor to produce a single square yard of fabric to clothe their families (fabric was too expensive for peasants to buy, so most spun it at home).

So yeah, considering how necessary fabric is to human life, that isn't a terribly surprising figure.

Citation for the 100-ish hours: https://acoup.blog/2025/09/26/collections-life-work-death-an...
by pinkmuffinere | 2026-02-15 17:58:26+00:00
It can be legitimately unclear. Relatively-advanced technology being available to early humans is remarkable. Likewise, achieving difficult tasks without the relatively-advanced technology is remarkable. Some prototypical examples of this:

- Incan stonework with stones 'perfectly' cut to fit without mortar -- did they have advanced tools to support that? Or just persistence?

- Greek fire -- is there some lost mechanism here? Or just the growth of legends?

- the pyramids (I think not so controversial among academics, but certainly in pop culture)
by zippyman55 | 2026-02-15 17:59:17+00:00
Some of my guys worked too hard from home. It was safer to restrict them to just working at work.
But about 5-10 percent would be the really smart people who for whatever reason would use their superpowers to not work hard. Drove me crazy.
As supervisor, the work was challenging to monitor, and there were some that helped to ruin it for the many.
If they were all at work, it was hay easier to detect those not pulling their expected weight.
by epistasis | 2026-02-15 18:00:02+00:00
Beautiful insight into processes that most of us never see, thanks!

My initial thought was "reusing an item is even better than recycling" but then realized that a warranties item is quite likely to have flaws and get warrantied very soon.

I have recently been trolling eBay for used computing equipment rather than buying new, after it was suggested I sell my old hardware that I don't think anyone would want. And man has that been a great experience, it's way more fun than browsing Newegg or doing pc part picking from new catalogs. I need neither the compute hardware nor the cost savings but it's a fun activity on its own, not unlike so many computer games where you do deck optimization or similar.
by KellyCriterion | 2026-02-15 18:00:11+00:00
> Claude + Opus especially. You can build something with a super small prompt and keep hammering it with fix prompts until you get what you want.

LOL: especially with Claude this was only in 1 out of 10 cases?

Claude output is usually (near) production ready on the first prompt if you precisely describe where you are, what you want and how you get it and what the result should be.
by mceachen | 2026-02-15 18:00:33+00:00
I drove a Scitex RIP (raster image processor) as my part time job in college. The CMYK (and if you were rich, N more spot colors) rotation degrees were held in religious fervor. Me: "These degrees seem random." Boss: "You are not to ever digress from those, they are the Only True Values" (and if you play with them in TFA you'll see it indeed becomes a moire mess with tiny tweaks, which would cost a ton in reprinting and delays).

It was mildly humorous that stochastic dithering (even with dot-gain compensation) was an option back in 1990, and produced much higher grade color reproductions, but clients wouldn't have any part of it, because it wasn't "the look" that I think they expect their readers expected.
by novatrope | 2026-02-15 18:00:50+00:00
I'm literally living this right now with my service (managed AI coding + hosting). The shift from "buy software" to "request outcomes" is real. My customers don't want to "own Claude API access" - they want to "get code fixed" or "deploy a site." Biggest challenge I've found: pricing. Do you charge per request? Per outcome? Per time? Traditional SaaS pricing ($X/month) doesn't quite fit when AI does the work.
by Grom_PE | 2026-02-15 18:03:06+00:00
I never liked the idea of running Flash inside the web browser, but a single file .swf game format is almost as good as any ROM game dump.

Some games didn't mind running locally from an .swf file, but some others had a "URL protection", presumably to prevent
people from embedding their flash games at other websites, and they didn't make an exception for localhost.

Long time ago I've fixed hundreds of such flash games using RABCDAsm and made them work in standalone Flash Player.

Took a brief look at Flashpoint Archive, it seems their way to fix URL check is to spin up a web server to present an address the game expects.
by everforward | 2026-02-15 18:04:05+00:00
Most of the clutter I would complain about comes more down to Discord making it really easy to bloat a server (and a cultural expectation to do so).

I’m in more than one Discord that has more channels than routine users. Like there are 4 people that use it on at least a weekly basis but there’s a meme channel, a pet photos channel, a news channel, yada yada. Managing notifications is a lost cause because the server owner redecorates the server every other week into new channels and what not.

Profiles have gotten weirdly wild, to sell Nitro stuff. Statuses, emojis for the status, now flairs from a server, profile pictures, etc.

Constant notifications for junk. Nitro is on sale, some game I don’t play has a quest, etc.

It’s fine, but it feels like Discord wants to be more than a carrier for voice and chat and I really just want them to do that. I don’t need “Facebook with VoIP”
by cm2012 | 2026-02-15 18:04:31+00:00
Incredibly, unbelievably stupid law. Waste is made when something unwanted is created, not when it is thrown out. Destruction or landfill is often the best option for all involved and modern landfills are very safe and sustainable. I worked in recycled clothing for a few years and it is not always or even often efficient.

This is forcing society to be inefficient to make some people feel a little better emotionally about something irrational.
Ask HN: What's the best realtime, local, TTS solution? Live call interpretation
by Wright007 | 2026-02-15 18:04:54+00:00
So I'm trying to build a system that listens to calls as they're happening. All implementations antigravity/codex/cursor throws out have been really janky and ineffective. Spent a couple days prompt engineering without finding an elegant solution. Anybody have insights?
by prinny_ | 2026-02-15 18:05:16+00:00
The way I see it using tmux to orchestrate multiple agents is an intermediate step until we get a UI that can be a product offering. Assuming we get orchestration to the level it has been touted, there is a world where tmux is unnecessary for the user. You would just type something to one panel in which the "overlord" agent is running (the "mayor" if we talking gas town lingo) and that agent will handle all the rest. I doubt jumping between panes is going to stick around as the product offering evolves.