It's a mark up language squarely focused on those that write text, but arduous to use if you want to share things you've illustrated, which is most of what I share online that isn't tech related. There's of course the argument that inline images/a spec'd way to expose an image directory listing with thumbnails/etc would only serve to distract or exploit you... but that also ignores the fact that people make art for your eyeballs too. Text is certainly the first class citizen, where images/music/video are all tied for second class, accessible only by downloading them 1 by 1.
That does mean it's perfectly fit for purpose! I wouldn't say it's bad just because I don't get my specific needs met. Someone who's needs are met by Gemini will love it.
Expected? No, it's counter to the intentions of the community.
Tolerated? Maybe. Here's a fun one (saw this in one of the past discussions dang linked): https://github.com/makew0rld/amfora/issues/199. That was over favicons, but the response would be similar if linked images were automatically fetched. Though the protocol has a "backoff" return code that could be used to throttle those things that would be less disruptive than Drew's approach of banning specific clients.
There are also clients that make a second request to ask for a favicon. In the spirit of the protocol the "icon" is just a UTF-8 symbol, but that behaviour is still controversial.
gemini://kennedy.gemi.dev
There are ~4K hosts and ~1M documents/images/files which make for nice playground with experimenting with crawlers, indexers, and more. Its a nice hobby. Lots of primarily static sites, and CGI is used to add some interactivity:
gemini://gemi.dev/cgi-bin/moon.py
Gemini is a new internet protocol which:
- Is heavier than gopher
- Is lighter than the web
- Will not replace either
- Strives for maximum power to weight ratio
- Takes user privacy very seriously
You find a capsule you like and discover others through that person's links.
Now rendering HTML is completely another level of difficulty.
If you ask me, I'd suggest to use Markdown instead of HTML for "simple web", but keep HTTP/1.1. Rendering Markdown is relatively simple and it's rich enough for a lot of document-based websites.
As for "web apps": use webassembly as underlying execution engine, but build something new for rendering, not coupled with any markup languages. Just provide canvas to draw and efficient API to implement draw operations. Application developers will use frameworks and frameworks prefer to draw everything themselves anyway. I think that kind of "web app engine" would be possible to implement with limited development resources, unlike modern web browser.
Edit: Ah, found it. https://youtu.be/11EwyJ5fcBI?si=d4IxlsNADvl4zeG9
> Gemini is a new internet technology supporting an electronic library of interconnected text documents. That's not a new idea, but it's not old fashioned either. It's timeless, and deserves tools which treat it as a first class concept, not a vestigial corner case. Gemini isn't about innovation or disruption, it's about providing some respite for those who feel the internet has been disrupted enough already. We're not out to change the world or destroy other technologies. We are out to build a lightweight online space where documents are just documents, in the interests of every reader's privacy, attention and bandwidth.
Those words don't communicate much about Gemini at all. Gemini could be a webring for all this says (it's not, but you could build one on it), or it could be something entirely different. It turns out that Gemini is a protocol and a text format, but those 100 words don't say anything about either of those things.
Can't say I'm surprised that it hasn't taken the world by storm, but it's still a cozy part of the Internet.
Once a quarter, I batch up the recent posts and bcc a bunch of folks I like to keep in touch with. Some of them respond. This is what I do in place of social media now; outside of email, Discord and WhatsApp are all I use to keep in touch with folks.
I also like to poke around different gemlogs with Lagrange, which is a nice desktop-oriented Gemini client. It's good fun.
Is there people building the equivalent to web directories and web rings? Or search engines? What are the cultural expectations on navigating other people's published resources?
Best means of discovery is like the original web, you surf it, bouncing from capsule to capsule finding what you like.
1. https://github.com/kr1sp1n/awesome-gemini?tab=readme-ov-file...
I'm on Arc and use uBlock Origin Lite, NextDNS, if I had searched I would have used Kagi. How do they (Google) know?
EDIT: I'm not implying that the gemini project is doing anything wrong here
You might also be profiled by Google and bucketed into a group of similar people who leak their data. They also went to this website and their YT recommendations became a signal to inform your own.
Not claiming any certainty here just possible ideas.
I have a theory that the idea you'd call your project "Project X" comes from TV shows.
We work with project codenames and we don't call anything Project X. We just call it X. It feels like adding the word "Project" is something a screenwriter would do to make the dialogue clearer.
So "Project Gemini" is not about, say, he constellation.
(Crystal Banana was a local joke codename where I worked)
It's fine for something like HN, but I heavily rely on named links and emphasis on all my blogs and is a dealbreaker.
And about the lack of file size: I proposed a way to sneak it in, and it was rejected outright. Oh well.
But yeah it seems like these lack of features is a willful and highly-opinionated approach to what the author of the protocol wants to take a stance on (their excuse is ease of implementation for clients, but I think it is a more of a deliberate choice). That's fine. It's their protocol and they can do what they want with it, but I think they missed an opportunity for it to take off.
Various people since have suggested we just settle on HTML 4 (with no scripting) and we'd be way better off and I agree.
When I open lagrange (a gemini client) and click on a gemini link from any gemini capsule (site), I am confident it will open something similar.
If I am opening a website, even a good frugal one made in HTML without js and click on an https link, I can't be sure if that won't send me to a page full of ads, tracking and heavy javascript with an embedded crypto miner.
You often find some http/https links on gemini capsules, but most clients will render the link in a different color so you kbow what to expect when clicking on a web link.
* Inline links * Image support * Video/audio support?
I /kind/ of like the idea of fonts not being customizable, that it makes people focus on the content rather than over-styling. A lack of server-side font customization would be good for forcing inline links to be obvious, rather than potentially obfuscated.
Inline links also help with the same, people who dislike it should be able to move them out of the context (like some terminal based browsers).
I don't care about image, video etc, they can just be a link to the resource if/when needed... given alt text/CC is supported or accessibility. Same for color coding stuff and CSS, users should customize their client for that if they want to, not the server.
It's proably a popular word for tech workers fans of the american space race.
Six Years of Gemini
> 1.1.1 The dense, jargony answer for geeks in a hurry
> Gemini is an application-level client-server internet protocol for the distribution of arbitrary files, with some special consideration for serving a lightweight hypertext format which facilitates linking between hosted files. Both the protocol and the format are deliberately limited in capabilities and scope, and the protocol is technically conservative, being built on mature, standardised, familiar, "off-the-shelf" technologies like URIs, MIME media types and TLS. Simplicity and finite scope are very intentional design decisions motivated by placing a high priority on user autonomy, user privacy, ease of implementation in diverse computing environments, and defensive non-extensibility. In short, it is something like a radically stripped down web stack. See section 4 of this FAQ document for questions relating to the design of Gemini.
Annoyed that for a system about plain text links, there's no link to "section 4".
The transport sounds like http without saying so. It doesn't go into why it doesn't use http. I'd probably be fine with HTTP and Markdown + image/video links. Maybe the Gemini document capabilities/scope is better but they're not described.
Edit: they are in "4.1.2"[0] Be warned, there's still a lot of beating-around-the-bush.
> 4.1.2 I'm familiar with HTTP and HTML. How is Gemini different?
[0] https://geminiprotocol.net/docs/faq.gmi#412-im-familiar-with...
Edit 2: Seems opinionated in many stupid-by-todays-needs ways. It feels like text-web made by some group of deniers.
Gemini (2023) - https://news.ycombinator.com/item?id=45238536 - Sept 2025 (46 comments)
Six Years of Gemini - https://news.ycombinator.com/item?id=44578143 - July 2025 (166 comments)
The Gemini protocol as seen by cURL's creator - https://news.ycombinator.com/item?id=43054583 - Feb 2025 (6 comments)
Ask HN: Are you using a Gemini browser? Would you follow a link if posted on HN? - https://news.ycombinator.com/item?id=41491928 - Sept 2024 (5 comments)
The Gemini protocol seen by this HTTP client person - https://news.ycombinator.com/item?id=36104533 - May 2023 (107 comments)
Bye, Gemini - https://news.ycombinator.com/item?id=37049064 - Aug 2023 (159 comments)
Show HN: Gemini web client in 100 lines of C - https://news.ycombinator.com/item?id=36786239 - July 2023 (45 comments)
The Gemini protocol seen by this HTTP client person - https://news.ycombinator.com/item?id=36104533 - May 2023 (107 comments)
What the eff Is Gemini? - https://news.ycombinator.com/item?id=34392811 - Jan 2023 (92 comments)
On the Shortcomings of Gemini Protocol - https://news.ycombinator.com/item?id=31560509 - May 2022 (46 comments)
Lagrange Pre-Release – A Gemini client that also supports Gopher and Finger - https://news.ycombinator.com/item?id=30998033 - April 2022 (30 comments)
Offpunk 1.0: Offline Gemini/Gopher/Web Browsing - https://news.ycombinator.com/item?id=30669799 - March 2022 (17 comments)
Gemini is a new internet protocol - https://news.ycombinator.com/item?id=30667545 - March 2022 (72 comments)
Gemini is a little gem - https://news.ycombinator.com/item?id=30072085 - Jan 2022 (122 comments)
Gemini is Solutionism - https://news.ycombinator.com/item?id=30067400 - Jan 2022 (218 comments)
Lagrange: A desktop GUI client for Gemini - https://news.ycombinator.com/item?id=29291392 - Nov 2021 (90 comments)
Gemini: The Misaligned Incentives - https://news.ycombinator.com/item?id=28688232 - Sept 2021 (84 comments)
What is this Gemini thing, and why am I excited about it? (2020) - https://news.ycombinator.com/item?id=28600436 - Sept 2021 (208 comments)
Gemini's "uselessness" is its killer feature - https://news.ycombinator.com/item?id=27490769 - June 2021 (193 comments)
Why Gemini is not my favorite internet protocol - https://news.ycombinator.com/item?id=27480324 - June 2021 (1 comment)
Gemini Space - https://news.ycombinator.com/item?id=26670464 - April 2021 (27 comments)
Agate, a simple Gemini server written in Rust - https://news.ycombinator.com/item?id=26401158 - March 2021 (34 comments)
Beyond the Web: Gopher, Gemini, and the Rise of the Small Internet - https://news.ycombinator.com/item?id=26359454 - March 2021 (5 comments)
gemini:// space - https://news.ycombinator.com/item?id=25986378 - Feb 2021 (170 comments)
The Tragedy of Gemini - https://news.ycombinator.com/item?id=25807633 - Jan 2021 (28 comments)
Hacker News over Gemini - https://news.ycombinator.com/item?id=25225810 - Nov 2020 (21 comments)
Show HN: Taurus – A Concurrent Gemini Server - https://news.ycombinator.com/item?id=25045130 - Nov 2020 (5 comments)
A Gopher View of Gemini - https://news.ycombinator.com/item?id=25005307 - Nov 2020 (9 comments)
A look at the Gemini protocol: a brutally simple alternative to the web - https://news.ycombinator.com/item?id=23730408 - July 2020 (347 comments)
Castor: A browser for the small internet (Gemini, Gopher, Finger) - https://news.ycombinator.com/item?id=23161922 - May 2020 (75 comments)
Gemini – A new, collaboratively designed internet protocol - https://news.ycombinator.com/item?id=23042424 - May 2020 (62 comments)
---
Bonus: First Gemini AI thread looks to have been:
DeepMind's new Gemini AI will combine LLMs with techniques from AlphaGo - https://news.ycombinator.com/item?id=36495892 - June 2023 (6 comments)
... and the first mammoth one looks to have been:
Gemini AI - https://news.ycombinator.com/item?id=38544729 - Dec 2023 (1602 comments)
A .gmi is 100% certain not to need any extra code capable of potential unwanted external communications, not now and not in the future.
Also .gmi is extremely simple and can be rendered very simply (and thus more securely) because it can be processed nearly statelessly line by line, without need of a rendering tree or document model.
But that's not the point.
For another, to do that we'd have to follow something like the prescription drug naming process https://globalhealthnow.org/2024-07/why-do-prescription-drug...
That way, instead of "Gemini", they could have named it something like "Cymbalta", "Xeljanz" or "Cialis" :P
Side note: I noticed that more "boring" and less sexy projects had cooler names a lot of the time, and my theory was that people were compensating for doing unsexy work.
Pick a descriptive name. Everyone else who is not in your team will thank you.
https://medium.com/better-programming/software-component-nam...
I wonder how much they pay Google for the top spot.
At most there might be a world where Google puts someone else's ad above the organic results.
-- Phil Karlton
It turns out that there really aren't that many possible project names before you get into the made-up "that sounds stupid" words.
My corollary to this is "You should never reach for a language you are not fluent in for a name. Especially, just stop it with using Japanese words to name stuff please ffs"
I agree, but that still doesn't stop funny name related issues between languages. One of my favourites was Pidora (a Fedora release for the RPI) which caused offence to some Russian speakers.
Sure, if you want projects to have the same naming strategy as Chinese Amazon Marketplace vendors.
Away from that, significance in naming begins to cluster quite quickly.