I had the idea for BIGWORDS.PAGE when I wanted to display a message on a tablet that I had remote management control over, but no physical access. Configuring it to be a kiosk browser is easy, but how do I get the browser to show my message? So I made the URL be the message.
It uses a URL fragment to configure the message. Browsers don't send URL fragments to the server, so I never see your message. There's no backend, and no storage.
All parameters are documented, so generating a message link is easy. There's also a built-in editor to make it extra easy.
There are a few extra features like slides, animations, and countdowns and timers. QR codes too. Not too fancy, but hopefully enough to be useful.
I know the uses for this are pretty niche. But it may be one of those things that you keep as a nugget in your brain, a tool in your back pocket. Not something you use often, but when you do it makes things just a little bit easier.
It's open source (MIT), and self-hostable if that's your thing.
LLM-speak is a huge turn off to me (and a lot of other people here, from my interactions), so the fact that your submission title is AI-generated is... sorry, I have no words. I don’t even care that much about the code, but please write prose by hand, in your own voice, if you want us to read it.
Edit: rephrased the last sentence. Also, here’s my take on the title:
> Show HN: Bigwords.page – turn any screen into a sign, controlled by the URL params
I’ve read it as “the URL is the UI”... sorry; I mean, you can change URL params (remotely) to control the app. It is a good idea perhaps (if you have the means to open a URL remotely), but evidently the title does not get the idea across. (Maybe I’m also wrong, I haven’t read the docs yet :)
it's marketing speech, following the rules of how to make memorable slogans that have been around for decades and in many different formats. Elevator pitches, explain it to me like I'm five, keep it simple, stupid, and so forth. It sounds like an LLM because LLMs learned from the digested wisdom of a million marketers. It may be an LLM produced it or it may just as well be someone who has cracked a marketing textbook some time in their life or hell, has watched the full run of Mad Men and thought, now what is a pithy way to express the selling point of this thing?
on edit: That said, I would probably have said "Turn Any Screen Into A Sign with Just A URL!"
“The [A] is the [B]” (and variations with “the” replaced with “your”) is screaming LLM to me. It’s been used by real people too, but it sounds very corporate, and is not something I’ve seen used to describe a personal project before LLMs.
The training data set is a huge corpus of text from a wide variety of styles and time period. A human writer knows to adjust their writing style to fit their intended audience. A skilled LLM user knows to direct the LLM to generate in the appropriate style. A naive LLM user doesn't, so that's how we get this uncanny valley ick, where the text feels wrong.
Let me guess, you saw the `–` and thought "Clearly no human uses the em dash. It must all be AI".
I looked over the website and their github page and saw no indication of AI usage. I'm not saying it wasn't used, but unless you have actual evidence, then please point it out.
> It's also a concise and accurate description of the service.
If it was a clever expression that does get the idea across, I would be okay with it. “The API is the UI” is of similar form and I love it. It’s simple, catchy, and it does convey a meaning: designing an API is just designing a UI for developers.
“The URL is the app” makes literally no sense without additional context? I’m not sure this is a “concise and accurate description of the service”. I did take a guess [1] and I was correct, but that was after I’ve seen the examples.
> “The URL is the app” makes literally no sense without additional context?
Yes exactly - it's one of those sentences that only makes sense to people who already know what it was intended to mean, because they know how it's intended to be parsed without having to puzzle over it. For the rest of us, it's pretty meaningless.
Regarding the LLMism, I didn't click on this submission when I saw it on HN last night, because I'm sick of seeing "The X is the Y", and an LLMish title tends to imply yet another piece of vibecoded slop.
That’s an en-dash – and I use those myself. (I’ve experimented with em-dashes—brefly—but it doesn’t look good to my eye in English.)
It’s all by the vibes, I don’t have any concrete proof. FWIW, the comment seems at least hand-edited, so maybe it’s just this “the [A] is the [B]” trope that has triggered me. If the rest of it is readable, then I apologize, but still: that’s a bad title, please don’t use this – unless you’re writing a LinkedIn post.
Not unlike how in the trades, a tee is T-shaped, a wye is Y-shaped, a delta is Δ-shaped. Spelled-out letters aren't always geometric metaphors, but it's a thing.
Then you've got the first syllable of Ω (omega) being a homophone of Ohm, for what that's worth. From there we have ℧ (mho) for conductance... It's all quite clever. But I digress; I'll get back to emceeing and deejaying, cueing these elpees after a quick pee, okay?
Different fonts use different lengths (sometimes en dash is the width of an uppercase “N” instead of lowercase, sometimes it’s half of the em dash which itself is `1em` which may or may not equal the width of the “M”...) But it’s a good way to remember that indeed, yeah!
After enough time spent reading LLM speak, I’ve found its phrasing and particularities subconsciously work into the way I write as well, entirely by hand.
It’s not always AI. It could be a human ;) I really despise LLM-written writing too; but I think it’s nice to be not super paranoid about it.
For me (not the OP) I see the patterns 'The X is the Y', 'Every X is a Y' (both of which are there) and llm-sense tingles. Add in Not A, B, C or Z and I'm increasingly convinced it's LLM generated text.
This isn't human writing. This is blustering, bloviated Claudespeak we have seen a thousand times over. Try Opus 5 and its ilk sometime and maybe you'll see it too.
The URL is the whole display: no accounts, no login, no backend.
Nothing else: no lists, tables, links, quotes, images or rules.
Underscores inside words are left alone, as in standard Markdown, so names like Home_Guest_5G, snake_case or first_name@example.com show exactly as typed. Only an underscore at a word boundary starts or ends emphasis.
Code is shown exactly as typed. Nothing inside backticks is treated as formatting, a slide break, {countdown} or an escape, which makes it the easy way to show passwords and codes with symbols in them. A code span has to open and close on the same line. Browsers may write a typed backtick as %60 in the address bar; both forms work.
All fonts ship with the site, each next to its license file. A font is only downloaded, from this site, when a display uses it.
Screen wake: with wake=on (the default) the viewer asks the browser to keep the screen on. It asks again whenever the tab becomes visible. Browsers without support ignore it.
The viewer can be embedded anywhere (OBS, dashboards); the editor and docs can't. HSTS is left to the TLS-terminating reverse proxy. The app reads all state from the URL fragment, so / serves every display. /editor and /docs are their own files (editor.html, docs.html); anything else is a real 404.
img-src stays open because displays show images from any host. Inline styles are needed for the runtime @font-face rules and style attributes. A snippet, so 404 responses get these headers too.
Exercises the canonical URLs, social cards and sitemap, which are only built when SITE_URL is set. The smoke test reads it too.
Don't get me started on the docstrings and code comments.
My man, that web design is absolutely pure Claude.
But hey that’s ok, the app is a good idea and works well, I have no issue with that.
Clearly the person making it knows how to structure a web app and make it usable and it shows it’s not just slop.
This is good use of AI coding
Donald Knuth once said "Jon Bentley probably hit the nail on the head when he once was asked why literate programming hasn’t taken the whole world by storm. He observed that a small percentage of the world’s population is good at programming, and a small percentage is good at writing; apparently I am asking everybody to be in both subsets."
Get off your high horse. Not everybody studied to write prose, not everybody was born American to begin with. If LLMs helps programmers get heard - good. That's probably the best usage for them anyway.
I haven’t studied to write prose either. I have studied English since when I was a kid, but I still make mistakes sometimes, and that’s okay.
LLMs turn your own voice into uniform corpo-speak. It is usually not an improvement, and it certainly doesn’t help you get heard – you’ll blend in with hundreds of other projects with the same-looking landing page, same tone of voice, same kilometres of docs that nobody read before putting up, and you’re basically playing a game of chance here. It’s like TikTok for programmers.
Ten times out of ten, I’ll prefer broken English over Claudish. Speak in your own voice. Don’t be afraid.
It does not, it does the opposite. It gets the programmer ignored.
Comments like "don't say this, this is LLM-ism" are the things that help the programmer get heard, whether she isn't good at English or she was just lazy and used LLM to generate text.
it doesn't help programmers be heard, it helps LLMs be heard. Just publish the thing with your own words, what matters is if they are genuine, not that they sound exactly like everybody else.
This is neat. I'm deaf, so I have to write people all the time with big text. I have a mobile app that does this, but it's neat you have something web based. Thanks for this. I'm going to self-host it as I can see a lot of use and I don't want to spam your servers.
The hosted version runs through Cloudflare, and since it’s a static site it caches really well! Don’t ever feel bad about using the hosted version. I’m not worried about bandwidth there. (But self-hosting is fun too!)
Good work! Funnily enough, I actually very recently also made a document sharing tool with very similar approach to sharing an "app as URL", but for a different kind of use case. I'm sharing arbitrary files, code snippets and scraped articles to friends or other devices of mine.
Readability of the link itself wasn't a goal for me, so I've opted to zstd compress the content instead for shorter urls. Can still get quite big of course, depending on content. But I have successfully shared even some small image files with this.
I really like this! It's definitely useful for businesses that just need to display one thing, and don't feel like spending a ton of time designing. It would be cool if you were able to download the stuff on it, in case it needs to be printed or something like that.
Super cool! I'm using this same strategy for a recipe viewer. One thing that works pretty well is actually letting agents build the urls. As an example, I have a skill file and docs for agents on how to use it; feel free to copy how I'm doing it, it works pretty well in permission-limited agents like chatgpt web! https://keep.recipes
Really cool idea, I once came up with something similar I was calling big numbers, but in that case you would display big numbers from different integrations, sheets, notion, public github, public apis etc... Not sure how it would work but it could be an idea to get the date from some dynamic sources/integrations
In Firefox, scrollWidth includes spaces that extend into the margin, so it's possible for text to fit perfectly on the screen, but scrollWidth > clientWidth. Fix here https://saej.in/posts/screaming/
I had this idea ten years ago. Told my parents it’d be nice to say “have a good day” and my moms initial reaction was she’d say “** you”. End of that idea.
I thought of something similar to both. A display would be nice but car to car/peer to peer communication would work too. It'd be a nightmare though considering I know how depraved the internet is. It's not anywhere near as anonymous but I don't think people generally care as much as they probably should.
I semi-regularly chair or panels and very often the venue hasn’t thought about a countdown timer so that I and the speakers know how long we have left. Having a timer massively improves the quality of a panel from an audience perspective as you can better pace things, move speakers on, wrap up without rushing, and so on.
Because of how often a timer wasn’t available last year I made something where I could quickly spin one up using ffmpeg. This is much easier and much more useful. (And doesn’t require having my Mac with me!)
Being able to stick one of these on an iPad on a table so that speakers can see it but audience can’t will be really useful.
Completely different architecture, but would be amazing if another device could control what message (or photo, embedded video) is displayed.
There's a huge industry around digital signage and I've always felt it could be replaced with a simple Chromium kiosk + auto-refreshed webpage content. There's really no need for expensive HDMI connections or custom video streams when we already have browsers.
I worked for a company creating apps for Kiosks that used SiteKiosk. It was a tight sandbox around Internet Explorer on Windows. This was 2014. Browsers are highly viable but properly locked kiosk mode wasn't. We used custom enclosures for $$$ with micro ATX Intel. Now Raspberry Pi or smaller could run circles around those workloads.
That period was a fun time and one I think about all the time. The profit margins and costs have come down so much I don't know if an equivalent workload or company would stay afloat as long.
I'm working on TheOpenPresenter for this, do give it a try. You can pretty much open the landing page, scan the QR code and you're set. It's also open-source and pretty mature now.
I did something similar years ago but for live satellite imagery https://earth.wooleys.us. I wanted to show my kids hurricane/typhoon imagery live. Worked great to throw up on a chromecast and let it run.
163 comments
It uses a URL fragment to configure the message. Browsers don't send URL fragments to the server, so I never see your message. There's no backend, and no storage.
All parameters are documented, so generating a message link is easy. There's also a built-in editor to make it extra easy.
https://bigwords.page/#Hello,%20HN!&bg=ff6600&fg=000000&font...
There are a few extra features like slides, animations, and countdowns and timers. QR codes too. Not too fancy, but hopefully enough to be useful.
I know the uses for this are pretty niche. But it may be one of those things that you keep as a nugget in your brain, a tool in your back pocket. Not something you use often, but when you do it makes things just a little bit easier.
It's open source (MIT), and self-hostable if that's your thing.
Let me know what you think.
LLM-speak is a huge turn off to me (and a lot of other people here, from my interactions), so the fact that your submission title is AI-generated is... sorry, I have no words. I don’t even care that much about the code, but please write prose by hand, in your own voice, if you want us to read it.
Edit: rephrased the last sentence. Also, here’s my take on the title:
> Show HN: Bigwords.page – turn any screen into a sign, controlled by the URL params
on edit: That said, I would probably have said "Turn Any Screen Into A Sign with Just A URL!"
That's all marketing.
https://en.wikipedia.org/wiki/The_Network_is_the_Computer
This is basically a differently-shaped https://github.com/antonmedv/textarea
Cool idea, but agree that fixing actual mistakes in the title is a worthwhile use of time.
I looked over the website and their github page and saw no indication of AI usage. I'm not saying it wasn't used, but unless you have actual evidence, then please point it out.
If it was a clever expression that does get the idea across, I would be okay with it. “The API is the UI” is of similar form and I love it. It’s simple, catchy, and it does convey a meaning: designing an API is just designing a UI for developers.
“The URL is the app” makes literally no sense without additional context? I’m not sure this is a “concise and accurate description of the service”. I did take a guess [1] and I was correct, but that was after I’ve seen the examples.
[1]: https://news.ycombinator.com/item?id=49997420
Yes exactly - it's one of those sentences that only makes sense to people who already know what it was intended to mean, because they know how it's intended to be parsed without having to puzzle over it. For the rest of us, it's pretty meaningless.
Regarding the LLMism, I didn't click on this submission when I saw it on HN last night, because I'm sick of seeing "The X is the Y", and an LLMish title tends to imply yet another piece of vibecoded slop.
It’s all by the vibes, I don’t have any concrete proof. FWIW, the comment seems at least hand-edited, so maybe it’s just this “the [A] is the [B]” trope that has triggered me. If the rest of it is readable, then I apologize, but still: that’s a bad title, please don’t use this – unless you’re writing a LinkedIn post.
---
Edit: here’s another LLMism example from another HN user: https://news.ycombinator.com/item?id=49996255
The "Nothing else: no lists, tables, links, quotes, images or rules" is from the docs indicating that these things are not supported.
Yeah, it’s somewhat a typography-nerdy thing :–) (gosh that looks terrible probably; edit: actually it’s surprisingly fine)
> indicating that these things are not supported
Of course, but it does sound a bit unnatural IMO. Then again, I’m going by the vibes here.
En dash is the width of an “n”. Em dash is the width of an “M”, so a little wider.
Then you've got the first syllable of Ω (omega) being a homophone of Ohm, for what that's worth. From there we have ℧ (mho) for conductance... It's all quite clever. But I digress; I'll get back to emceeing and deejaying, cueing these elpees after a quick pee, okay?
I saw what you did there.
It’s not always AI. It could be a human ;) I really despise LLM-written writing too; but I think it’s nice to be not super paranoid about it.
The initial commit:
https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/commit/d5a11...
https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/commit/d5a11...
https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/commit/d5a11...
https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/commit/d5a11...
https://github.com/SpeakingOfBrad/BIGWORDS.PAGE/commit/d5a11...
The highlights:
Don't get me started on the docstrings and code comments.I posted a detailed reply to your comment with lots of examples and HN's new slop filter just killed it... due to overabundance of slop.
:-)
I recommend turning on showdead to read it.
https://news.ycombinator.com/item?id=50002280
Get off your high horse. Not everybody studied to write prose, not everybody was born American to begin with. If LLMs helps programmers get heard - good. That's probably the best usage for them anyway.
LLMs turn your own voice into uniform corpo-speak. It is usually not an improvement, and it certainly doesn’t help you get heard – you’ll blend in with hundreds of other projects with the same-looking landing page, same tone of voice, same kilometres of docs that nobody read before putting up, and you’re basically playing a game of chance here. It’s like TikTok for programmers.
Ten times out of ten, I’ll prefer broken English over Claudish. Speak in your own voice. Don’t be afraid.
It does not, it does the opposite. It gets the programmer ignored.
Comments like "don't say this, this is LLM-ism" are the things that help the programmer get heard, whether she isn't good at English or she was just lazy and used LLM to generate text.
You are classifying well and optimizing poorly.
In fact I employed the same idea for the slide stack site I use for teaching. Not exactly "URL is an app" but "URL is a slide"
https://okaleniuk.codeberg.page/blackboard/_1.html?sequence=...
The same consideration applies. No backend, no storage, also no user data collection, no authorization, no hurdles in general. Everyone can use it.
https://github.com/abejfehr/bigtext
https://www.abefehr.com/bigtext/
https://github.com/leoherzog/ParameterPage
https://parameter.page/?title=This%20is%20an%20Example%20Pag...!
Thanks!
Fun fact; it's not as widely usable but data URLs work for this too.
Maybe you could add an option to copy the data URL for a page?
e.g. this one
https://bigwords.page/#%23%20Gate%2012%0ABoarding%20now&bg=0...
becomes
data:text/html,<!doctype html><meta name=viewport content="width=device-width,initial-scale=1"><body style="margin:0;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:%230b3d91;color:%23fff;font-family:sans-serif;text-align:center"><h1 style="font-size:18vw;margin:0">Gate 12</h1><p style="font-size:9vw;margin:0">Boarding now</p>
(paste this ^^ into your URL bar)
https://linkify.ink/about
Readability of the link itself wasn't a goal for me, so I've opted to zstd compress the content instead for shorter urls. Can still get quite big of course, depending on content. But I have successfully shared even some small image files with this.
https://linkify.ink/#AgACe30otS_9YAATHRMAcsgaGHBZBwCDZiUYf1d...
You seem to have the same bug I had when I first implemented https://screaming.saej.in/
In Firefox, scrollWidth includes spaces that extend into the margin, so it's possible for text to fit perfectly on the screen, but scrollWidth > clientWidth. Fix here https://saej.in/posts/screaming/
In the UK it depends, some epileptics aren't allowed to drive. Not all epileptics are photosensitive and not all movies trip people.
> You are a poo-emoji bomb-emoji #!! driver
?
> No account, no app, nothing stored on a server.
> No app. No login. Just a URL.
> No app, no account, free.
these two are from the front page
I semi-regularly chair or panels and very often the venue hasn’t thought about a countdown timer so that I and the speakers know how long we have left. Having a timer massively improves the quality of a panel from an audience perspective as you can better pace things, move speakers on, wrap up without rushing, and so on.
Because of how often a timer wasn’t available last year I made something where I could quickly spin one up using ffmpeg. This is much easier and much more useful. (And doesn’t require having my Mac with me!)
Being able to stick one of these on an iPad on a table so that speakers can see it but audience can’t will be really useful.
Thank you!
Claudish needs to be cleaned up.
There's a huge industry around digital signage and I've always felt it could be replaced with a simple Chromium kiosk + auto-refreshed webpage content. There's really no need for expensive HDMI connections or custom video streams when we already have browsers.
That period was a fun time and one I think about all the time. The profit margins and costs have come down so much I don't know if an equivalent workload or company would stay afloat as long.