💾 Archived View for gemi.dev › gemini-mailing-list › 000155.gmi captured on 2023-12-28 at 15:42:11. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-11-04)

🚧 View Differences

-=-=-=-=-=-=-

[ANN] GemiNaut - a user friendly Gemini browser for Windows in C#

1. Luke Emmet (luke.emmet (a) gmail.com)

Hi All

I'm pleased to announce the first release of GemiNaut, a user friendly 
Gemini client for Windows.

Its written with a more "typical" end user in mind who may not be so 
familiar with the command line and would like a graphical browser to 
explore Gemini space. In particular, I'm interested in usability, 
cognitive aspects of navigation through hypertext - how to support the 
user in his or her understanding of where they are and what comes up 
next if they were to click on the links.

Some key features


shortcuts etc

from the link style (fat arrow vs squiggly one)


The theming engine is extensible - not quite drop in yet, but that is my 
direction of travel. It uses HTML for the actual rendering of the 
content, which allows for some innovation and experimentation of the 
possible options.

One element that is innovative as far as I know is the support for 
automatic "site-specific" themes. As you know there is no styling 
information in GMI documents, so it is sometimes difficult to know whose 
site you are on, and when you have traversed the boundary from one 
author voice to another. On the web each site has its own look and feel.

I wanted to explore the idea of automatic site specific themes, and the 
"Fabric" theme puts some of these ideas into practice as an initial 
pass. Each site gets its own simple look and feel as if laid out on a 
different fabric, like a tablecloth.

There are other themes in this initial release, including

Plain - simple, and effective, black text on white background, blue links
Terminal - for fixed width folk who like to live in the dark
Unified - a theme that tries to bring together common navigational and 
search elements

You can switch between these as you go.

For further details, screenshots, downloads and source, please see the 
project home page:

   https://www.marmaladefoo.com/pages/geminaut

Any feedback and further thoughts welcome.

Best Wishes

  - Luke

Link to individual message.

2. solderpunk (solderpunk (a) SDF.ORG)

On Thu, May 28, 2020 at 12:22:07PM +0100, Luke Emmet wrote:
 
> Any feedback and further thoughts welcome.
> 

Thanks a lot for sharing this!  Even as a "terminal junkie" myself I am
really happy to see more "user friendly" clients appear, especially for
more mainstream platforms.

I am very excited to see that people are starting to explore the
possibilities for client-driven styling of Geminispace.  Slight
differences in appearance for different domains, and also for links
into/out of Geminispace are both excellent ideas.  I'm curious about the
blue and white geomeric icon shown in your screenshot for the "fabric"
theme.  Is that randomly generated based on the hostname?  Is it the
result of a failed favicon request, or is it always there in that theme?

Something no client has done yet, as far as I know, which I think would
be great is to make use of the different levels of heading which are
possible in text/gemini to automatically generate a "table of contents"
for a long document which could be displayed in a side-panel, and allow
immediate jumping to a particular location.  A lot of PDF viewers have
something like this.  This was just as big a motivation for my decision
to include those headers in the spec as that they look nice.  My hope is
that with good clients it ends up being extremely easy to make
geminisites which are very quick and easy to navigate or, at the very
least, requires a concerted effort to make one which is hard to
navigate.

I would also like to see - and this is just my personal preference,
which I hope people agree with but which I can't force anybody to share
- better support in clients for bookmarking and for handling Atom/RSS
feeds.  The mainstream web experience has tended towards people having
their browsing directed for them, by things popping up on feeds hosted
by (a small number of) other people.  There's obviously some value in
this for content discovery and discussion, but I think it would also be
nice if, along with the technical changes at a protocol level to
discourage tracking, reduce software and hardware requirements, and
generally remove bloat and clutter, Gemini could also be a vehicle for
a "cultural change" toward (among other things!) more self-directed and
self-paced reading.

But we'll see how that goes.

Anyway, this looks like a great project with really interesting plans.
Please keep us informed!

Cheers,
Solderpunk

Link to individual message.

3. Dunderpate (dunderpate (a) sdf.org)

Hi there Luke!

Thanks a boat-load for this :D It's super light, portable and there are
pre-built binaries. I'm all over it. I'd be happy to report any issues
that I find while using it.

Thanks again!
-- 
Dunderpate

Link to individual message.

4. Luke Emmet (luke.emmet (a) gmail.com)

On 28-May-2020 16:29, solderpunk wrote:
> Thanks a lot for sharing this!  Even as a "terminal junkie" myself I am
> really happy to see more "user friendly" clients appear, especially for
> more mainstream platforms.

I think this will be important that there are clients out there for 
everyone.

> I am very excited to see that people are starting to explore the
> possibilities for client-driven styling of Geminispace.  Slight
> differences in appearance for different domains, and also for links
> into/out of Geminispace are both excellent ideas.  I'm curious about the
> blue and white geomeric icon shown in your screenshot for the "fabric"
> theme.  Is that randomly generated based on the hostname?  Is it the
> result of a failed favicon request, or is it always there in that theme?
This is a site-specific "placemarker" automatically generated for that 
site. It is the equivalent of a site logo, or something like that. 
Perhaps I might implement putting any favicon there if it exists. Each 
site has a different background "fabric" and placemarker. Together these 
elements help dramatically in my experience in finding your way around. 
You can click a link and recognise you have arrived at a familiar place.

The site placemarker is an active element. It will take you to the the 
home page for the site or user.

My concept of a site is that it is either the domain itself, or if there 
is a user specified in the path, then it is the user home.

gemini://domain1.tld/mypath.gmi -> site is domain1.tld for that page

gemini://domain2.tld/users/foo/bar/baz.gmi -> site is domain/users/foo 
for that page

This gives a nice overall approach that each user gets a singular theme 
applied to all their content, but there can be many users on a domain.

> Something no client has done yet, as far as I know, which I think would
> be great is to make use of the different levels of heading which are
> possible in text/gemini to automatically generate a "table of contents"
> for a long document which could be displayed in a side-panel, and allow
> immediate jumping to a particular location.  A lot of PDF viewers have
> something like this.  This was just as big a motivation for my decision
> to include those headers in the spec as that they look nice.  My hope is
> that with good clients it ends up being extremely easy to make
> geminisites which are very quick and easy to navigate or, at the very
> least, requires a concerted effort to make one which is hard to
> navigate.
Ah yes - it was already on my todo list, and I knew it wasnt going to be 
hard. I'm assuming you mean something like this :-)

   
https://www.marmaladefoo.com/vanilla/marmaladefoo/uploads/geminaut/geminaut_toc.png

I just now uploaded a new 0.8.3 version that has this implemented:

   https://www.marmaladefoo.com/pages/geminaut

> I would also like to see - and this is just my personal preference,
> which I hope people agree with but which I can't force anybody to share
> - better support in clients for bookmarking and for handling Atom/RSS
> feeds.  The mainstream web experience has tended towards people having
> their browsing directed for them, by things popping up on feeds hosted
> by (a small number of) other people.  There's obviously some value in
> this for content discovery and discussion, but I think it would also be
> nice if, along with the technical changes at a protocol level to
> discourage tracking, reduce software and hardware requirements, and
> generally remove bloat and clutter, Gemini could also be a vehicle for
> a "cultural change" toward (among other things!) more self-directed and
> self-paced reading.

I agree there are a set of cultural practices and expectations that we 
can try to shape with Gemini as a way of using the Internet. Finding the 
sweet spot is always a challenge, but I think there is good evidence of 
the general direction of our collective travel.

> But we'll see how that goes.
>
> Anyway, this looks like a great project with really interesting plans.
> Please keep us informed!

Thanks!

  - Luke

Link to individual message.

5. Luke Emmet (luke.emmet (a) gmail.com)

Hello Dunderplate

On 28-May-2020 21:27, Dunderpate wrote:
> Thanks a boat-load for this :D It's super light, portable and there are
> pre-built binaries. I'm all over it. I'd be happy to report any issues
> that I find while using it.
>
> Thanks again!

Thanks - I'd be grateful of any practical feedback you have. It is still 
work in progress and I expect a few bugs here and there...

Feel free to re-download the latest 0.8.3 build.

Best Wishes

  - Luke

Link to individual message.

6. Sean Conner (sean (a) conman.org)

It was thus said that the Great Luke Emmet once stated:
> Each site has a different background "fabric" and placemarker.

  How is this done?  I'm looking at the code and I don't see an obvious
place where this is done.  Then again, I don't use C# so I'm not sure where
to look.  It's a cool idea.

> My concept of a site is that it is either the domain itself, or if there 
> is a user specified in the path, then it is the user home.
> 
> gemini://domain1.tld/mypath.gmi -> site is domain1.tld for that page
> 
> gemini://domain2.tld/users/foo/bar/baz.gmi -> site is domain/users/foo 
> for that page

  Be careful, because different servers might display user directories
differently.  Some might do:

	gemini://example.com/~alice/

and others:

	gemini://example.net/users/bob/

and still others:

	gemini://example.org/Carol/

And some might just do all three just to mess with you 8-P

  -spc

Link to individual message.

7. parnikkapore (a) disroot.org (parnikkapore (a) disroot.org)

An HTML attachment was scrubbed...
URL: <https://lists.orbitalfox.eu/archives/gemini/attachments/20200529/3636
d683/attachment.htm>

Link to individual message.

8. Sean Conner (sean (a) conman.org)

It was thus said that the Great parnikkapore at disroot.org once stated:
>
> Gravatar. (It's in the theme template)

  Ah.  Cool.

  -spc

Link to individual message.

9. InvisibleUp (invis (a) park-city.club)

I see my own browser Twin Peaks has some competition. :p

Nah, it's good to see some more user-friendly Gemini clients out there. 
There's a lot about yours that I really like. The themes, the document 
title in the titlebar, and especially the "Fabric" theme with it's 
automatic patterns are all super nice. I'm absolutely going to have to 
borrow some from this. We're both using C# under the GPLv3, and we both 
took the approach of rendering Gemini to a web browser view, so I 
imagine we could definitely share a lot of code.

I can't wait to see what more comes of this.


-- Email domain proudly hosted at https://migadu.com

Link to individual message.

10. Luke Emmet (luke.emmet (a) gmail.com)



On 29-May-2020 01:09, Sean Conner wrote:
>> My concept of a site is that it is either the domain itself, or if there
>> is a user specified in the path, then it is the user home.
>>
>> gemini://domain1.tld/mypath.gmi ->  site is domain1.tld for that page
>>
>> gemini://domain2.tld/users/foo/bar/baz.gmi ->  site is domain/users/foo
>> for that page
>    Be careful, because different servers might display user directories
> differently.  Some might do:
>
> 	gemini://example.com/~alice/
>
> and others:
>
> 	gemini://example.net/users/bob/
>
> and still others:
>
> 	gemini://example.org/Carol/
>
> And some might just do all three just to mess with you 8-P

I was a little loose with my description. It cannot know where the 
"user"'s "home" page is, it just makes an educated guess based on a 
general heuristic. I think it mostly applies, at least in these early 
days of Gemini Pubnix DIY server culture. All it is doing is traversing 
up the path from the current page  URL to propose a likely home path

In the first two cases alice and bob would get their own theming. Carol 
would inherit the site wide theming as there is no way to infer her 
existence as a user based on the URL. So Carol would have to nag her 
sysadmin if she wanted the site specific theming to apply to her.

There are other cases (servers in other languages for example). Maybe a 
German server would have gemini://domain/benutzer/frank - this is not 
considered at present, but pull requests are welcome! Also I havent 
implemented it so "*/~bar/baz" gets the same theme as "*/users/bar/baz" 
on the same server, but that could come if it is a common form to be 
found around and about. It could be always be an option, even 
potentially the end user might say "for this path, I expect the home 
page to be at this level in the URL"

It would be nice if there was a way for a user to optionally convey some 
kind of seed or info for some basic theming (like favicon). That could 
be picked up by a client if it existed. Very basic info, maybe 
foreground, background colours, site icon and maybe the definitive home 
page link.

Best wishes

   - Luke

Link to individual message.

11. Petite Abeille (petite.abeille (a) gmail.com)


> On May 29, 2020, at 22:06, Luke Emmet <luke.emmet at gmail.com> wrote:
> 
> It would be nice if there was a way for a user to optionally convey some 
kind of seed or info for some basic theming (like favicon). That could be 
picked up by a client if it existed. Very basic info, maybe foreground, 
background colours, site icon and maybe the definitive home page link.

Perhaps some sort of informal convention, ala shebang [1], as a prelude to 
a text/gemini, with a few directives, such as:

#!?? ?(u?op?p?sdn ??) ?(black white) 

In other words, to be considered a gemini shebang (??# for short):

? It MUST be the first line of a text/gemini
? The line MUST start with the sequence U+0023 U+0021 U+264A U+FE0E U+0020 ('#!?? ')

Followed by any number of key-value pairs, perhaps as algol type sexp, e.g.:

? (U+2302 HOUSE) for user info such as name (u?op?p?sdn) and icon (?? 
U+2623 BIOHAZARD SIGN)
? (U+2F8A COLOR) for styling info such as text color (black) and background (white)

Blending both retro and contemporary styling, a bit like Gemini itself.

Gemini For The Win (???? for short)

P.S. Aside from being a gimmick, the use of Unicode symbols showcase 
Gemini's capabilities, namely full Unicode support.
P.P.S. To paraphrase some old slogan, Keep Gemini Weird ?

[1] https://en.wikipedia.org/wiki/Shebang_(Unix)


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.orbitalfox.eu/archives/gemini/attachments/20200530/5237
19ad/attachment.htm>

Link to individual message.

12. Martin Keegan (martin (a) no.ucant.org)

On Sat, 30 May 2020, Petite Abeille wrote:

> Perhaps some sort of informal convention, ala shebang [1], as a prelude 
to a text/gemini, with a few directives, such as:
>
> #!?? ?(u?op?p?sdn ??) ?(black white)

This stuff surely is already doable with HTML on the normal web.

There's an ornateness spectrum, from very intricate, complex and decorated 
to very minimal and austere. On the one hand we have Catholic and Orthodox 
churches, subway graffiti, NHS GP waiting room notice boards, Geocities, 
Myspace, etc, and on the other we have Quaker meeting houses, Danshari, 
Wikipedia, medium.com, suckless.org, etc. The existing HTML-based web 
caters very well to the ornate end of the spectrum. text/gemini as 
originally conceived caters well to the minimal end.

In the present circumstances, familiarity and the lure of popularity will 
generally create a pressure to move away from the minimal end of this 
spectrum, leaving the demand it satisfied once again uncatered to. It is a 
huge shame that people who just want to write, and people who just want to 
read, must, if they want to communicate over the web, contend with vast 
amounts of complexity thrown in their way by advertisers and designers. 
Moving to duplicate the web will just fragment Gemini as the "just want to 
write and read" crowd evict themselves to a different text file format.

Mk

Link to individual message.

13. Petite Abeille (petite.abeille (a) gmail.com)



> On May 30, 2020, at 16:55, Martin Keegan <martin at no.ucant.org> wrote:
> 
> Quaker

Gemini, the Amish of protocols.

This is meant in an endearing* way.


Link to individual message.

14. Martin Keegan (martin (a) no.ucant.org)

On Sat, 30 May 2020, Petite Abeille wrote:

> Gemini, the Amish of protocols.
>
> This is meant in an endearing* way.
>
> * compare and contrast: endearing ? enduring

Indeed. I take that glyph to mean that the two properties promote each 
other.

Likewise, with my reference to NHS GP surgeries: the noticeboards are 
usually a messy collage of competing posters about different treatments 
and public health concerns, because there's normally no inclination to 
impose a single message or resist the addition of just "one" more poster. 
It was in February when the posters were all cleared away and replaced by 
a single COVID19 poster that I realised the pandemic was deadly serious.

Mk

-- 
Martin Keegan, +44 7779 296469, @mk270, https://mk.ucant.org/

Link to individual message.

---

Previous Thread: [ANN] Darwaza - An extensible Tcl/Tk Graphical Browser

Next Thread: gemserv: Non-gemini files have mime type text/gemini