163 comments

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.

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.

idw
Really nicely done
> The URL is the app

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

Wait how is "The URL is the app" LLM-speak? Genuine question, sounded fine to me when I read it, not sure what a better way to phrase it would be
It's LLM speak because it's wrong, but pithy. The app is the app, and it lives on the server. The URL just contains the content of the sign.
I thought they meant the outputted javascript is embedded in the url, like a bookmarklet. But looking closer, it clearly isn't.
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!"

onion2k
It's LLM speak because it's wrong, but pithy.

That's all marketing.

“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.
2III7
LLM apophenia is so widespread in HN that it's becoming quite sickening.
rdiddly
It must have been used by humans before LLMs, because where do you think they learned it?
It has been used before LLMs. I have no idea why LLMs prefer it, though.
seb1204
All the marketing materials that got used for training. Marketing speak is not my cup of team.
gwerbin
It was always corny except in very specific cases.
chabska
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.
stavros
This is like asking "how do you know a cat is a cat and not a dog?". If you've seen enough samples, you recognise the pattern.
Yeah, the issue here is that the URL is not the app.

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.

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.

OP didn't quote the part with the em dash, they quoted the part with the "The X is the Y", which is a common LLMism.
It's also a concise and accurate description of the service. All this gnashing of teeth over "could've been AI-generated" is overblown and tiresome.
> 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.

[1]: https://news.ycombinator.com/item?id=49997420

abanana
> “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.

---

Edit: here’s another LLMism example from another HN user: https://news.ycombinator.com/item?id=49996255

I always get en and em confused. They are all just dashes to me :-).

The "Nothing else: no lists, tables, links, quotes, images or rules" is from the docs indicating that these things are not supported.

> I always get en and em confused

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.

xoxxala
I, too, was confused for the longest time, but the secret is in the names.

En dash is the width of an “n”. Em dash is the width of an “M”, so a little wider.

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!
> (I’ve experimented with em-dashes—brefly—but it doesn’t look good to my eye in English.)

I saw what you did there.

dannyw
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.

Agreed. I've noticed the same too. I'm afraid we've probably already reached the time where text written by humans sounds llmish
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.
ajkjk
not that
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 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:

    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
>I'm not saying it wasn't used, but unless you have actual evidence, then please point it out.

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

I think you’ve been resurrected now :)
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.

Indeed. I would much prefer to read someone's poor English over their fluent LLM.
bmacho
> If LLMs helps programmers get heard - good

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.
I think “The URL is the app.” Is AI generated and it weakens the title but that’s ultimately only so important.

You are classifying well and optimizing poorly.

Cry me a river with your pretentious bs
I love it!

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.

Curious, did you use AI model?
We had similar ideas! Except mine is less customizable, I never thought to add formatting.

https://github.com/abejfehr/bigtext

https://www.abefehr.com/bigtext/

Great execution.
zie
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.

Thanks!

SpeakingOfBrad OP OC
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!)
Neat idea!

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)

Neat!!! Does this work with mailto, can you embed html into emails?
You can set the content of the mail, whether it accepts html is up to the email clients I think.
nicbou
It's a really cool idea with lots of potential uses, and the extra features are also neat. No notes, well done!
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.

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...

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
https://bigwords.page/#smol!%20!%20!%20!%20!%20!%20!%20!%20!...!

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/

Thanks! Like a dummy, I never tested in anything but my own browser. I found a couple of other bugs as well that weren't obvious without Firefox.
yunruse
epilepsy warning for the 'MAGIC' style :(
megraf
Can epileptics drive to a movie theater and watch a movie?
epileptics typically aren’t allowed to drive if there’s any risk of having a seizure while driving (depends on the type and severity of the epilepsy)
That's an interesting question. What motivated it?

In the UK it depends, some epileptics aren't allowed to drive. Not all epileptics are photosensitive and not all movies trip people.

Hook it up to voice control so I can put an iPad in the back window of the car and tell other drivers… things.
a3w
Won't it say

> You are a poo-emoji bomb-emoji #!! driver

?

ceejayoz OC
I am exercising my Fifth Amendment right to silence at this time.
GoRudy
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.
seb1204
Ouch, life long child trauma created. No idea is good enough to impress mum.
i think it was the message she would put on the screen, not her reaction to childs invention
I considered something similar with LED lights but I deemed it illegal in Germany
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.
Cool project and nicely done but "the URL is the app" is just meaningless and it sounds exactly like what an llm would drop in every other paragraph.
efilife
because this is exactly what happened

> 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

You took the words right out of my LLM
the LLM took the words right out of humans first though
arshxyz
The Wake Lock API was made for stuff like this: https://developer.mozilla.org/en-US/docs/Web/API/WakeLock
This is so brilliantly simple.

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!

"Nothing else: no lists, tables, links, quotes, images or rules."

Claudish needs to be cleaned up.

efilife
where did you find this? has this been removed?
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.