logoalt Hacker News

Show HN: Infinite canvas notes in the non-Euclidean Poincaré disk

176 pointsby uonrlast Tuesday at 4:08 PM32 commentsview on HN

Hi!

This is an infinite canvas note-taking tool where notes are laid out in a non-Euclidean, hyperbolic geometric space. As you drag and navigate through the view, you’ll experience a unique fluid distortion that naturally leverages your brain's spatial memory.

I’ve been obsessed with the concept of space in HCI for years. Many modern UI patterns are essentially workarounds for the lack of screen real estate. While researching zoom-based UIs a while back, I stumbled upon old HCI papers that used the Poincaré disk model of the hyperbolic plane to organize data. It elegantly projects an infinite space into a finite disk, keeping everything contextually visible.

I wanted to build an experimental app around this concept years ago, but the non-Euclidean math was a significant roadblock. Recently, I decided to give it a shot with the help of LLMs. It turns out that LLMs can handle the mathematical heavy lifting quite well, specifically in designing the coordinate systems and optimization algorithms, provided that you guide them with a solid architectural design.

This is still an experimental demo, but I hope it leaves an impression. I’d love to know if you find this paradigm practical for organizing your thoughts.


Comments

lioetersyesterday at 6:53 PM

Very interesting user interface concept, and smooth implementation. It's weirdly intuitive, like navigating on the surface of a sphere, or zooming in/out of a kind of spherical perspective where things that are further away are smaller in size. I had difficulty at first reaching some small clustered points, until I got the hang of it.

An idea that came to mind is that maybe some shading would help, with closer areas brighter and more distant areas darker. Or, like another comment said, an option to show/hide a grid.

_spduchamptoday at 3:57 PM

I really like this, but moving around a bit I find that things kind of seem to rotate which is disorienting. When this loads, the photo is to the right of the cake. After zipping around a bit in this space, the photo is then to the left of the cake. Is that a rotation? Is there a way to lock the orientation?

show 1 reply
Nescotoday at 7:14 AM

Pretty cool, I actually explored the same idea several months ago, as you can put a huge amount of information while keeping emphasis on local features

https://paperverse.net/

I see you also hade a similar idea on what happens when you click on an arrow

AxisAnglesyesterday at 10:49 PM

This is very cool. It maps to my existing understanding of how knowledge actually works.

You often don't need to see the whole hyperbolic disc, only some region in the center, and there, the text would largely still be readable.

The arrows are drawn in hyperbolic space, but the text is not; it really should be. Then there will never be an overlap problem.

Alternatively, the center of the text (or generally the anchor) of the text box could still be oriented to the screen to seed the render orientation, just like it already is, but allow the rest to be drawn following the rules of geodesics in the hyperbolic space. though I don't know if that would work as well.

penteractyesterday at 10:58 PM

I'm a bit more interested in what it teaches about the hyperbolic plane than I am in it's effectiveness as a note taking app (although the way it supports an exponentially growing tree does seem appropriate for depicting knowledge - I'd be interested to see something like a force directed graph of Wikipedia plotted on the hyperbolic plane).

The points and arrows do move and change shape appropriately while panning, but the images and text do not. It might be possible to use feDisplacementMap (an SVG filter effect) cleverly to get the deformations right. This would probably make performance worse, and I'm not sure how readable the text would be, but it would mean that things wouldn't start overlapping each other while panning.

ofalkaedyesterday at 7:50 PM

This would be fantastic on a tablet; stylus for entry and fingers for navigation would make it very efficient and a great improvement over the standard infinite page. I would probably pay for a non-web tablet version, it is rare my tablet is connected to the internet.

efilifetoday at 4:28 PM

And this is how vibe coding should be

mapontoseventhstoday at 12:50 AM

This is neat. I built an LLM once that stored its embeddings in poincare space, and it was a struggle for me to visualise what it was doing at first. This would have helped.

show 1 reply
OneDeuxTriSeiGoyesterday at 5:58 PM

I really like the approach but it'd certainly be nice to be able to use alternate topologies.

Also it'd be nice if there was an underlying grid plotting the metric/distance function to help conceptualize distance/relationships better when you get to the edges.

athrowaway3ztoday at 6:06 AM

I like it. The one thing I'd absolutely add is a color difference between the background and the circle, or at least something to indicate the horizon which would provide a better sense of orientation.

esttoday at 8:24 AM

That's insanely cool. Now how about actually compress text with LLM that summarize long texts with the non-Euclidean visulization...

jakemangertoday at 8:22 AM

This is pretty cool. I'm curious, what do you mean "leverages your brain's spatial memory"?

show 2 replies
gataneyesterday at 5:43 PM

You might as well look at HyperRogue, where the whole game happens to be on the same model.

show 1 reply
jlg23yesterday at 10:58 PM

This is ideal for large argument maps, thank you!

isoprophlexyesterday at 5:27 PM

It's Greg Egan's notebook!

nooronyesterday at 9:57 PM

I love it -- would like to use this daily.

hankbondyesterday at 10:26 PM

I love how wild this is. Thank you for thinking out of the box.

I kind of hate actually using this tho since it's just not how my brain thinks about concept relationships (spatially related concepts even in linear space).

airstrikeyesterday at 9:02 PM

Now can you do the inverse and let us see it from the inside?

levmiseriyesterday at 6:02 PM

Loving the smoothness of this. One concerning thing is overlapping notes – I don't want to be fucking around with trying to move the canvas just right to read a note under another note and there doesn't seem to be any other simple mechanism to resolve this (especially for larger blocks/images). The 'untangle' feature doesn't really solve this.

sys-roninlast Tuesday at 6:36 PM

Nice concept. really unique experience. so smooth.

tompccsyesterday at 9:51 PM

This is batshit, I love it

meetflowtoday at 12:25 PM

[flagged]