| ▲ | Show HN: Infinite canvas notes in the non-Euclidean Poincaré disk(uonr.github.io) | |||||||
| 105 points by uonr 4 days ago | 18 comments | ||||||||
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. | ||||||||
| ▲ | AxisAngles 35 minutes ago | parent | next [-] | |||||||
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. | ||||||||
| ▲ | penteract 26 minutes ago | parent | prev | next [-] | |||||||
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. | ||||||||
| ▲ | lioeters 5 hours ago | parent | prev | next [-] | |||||||
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. | ||||||||
| ▲ | jlg23 25 minutes ago | parent | prev | next [-] | |||||||
This is ideal for large argument maps, thank you! | ||||||||
| ▲ | ofalkaed 4 hours ago | parent | prev | next [-] | |||||||
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. | ||||||||
| ▲ | OneDeuxTriSeiGo 5 hours ago | parent | prev | next [-] | |||||||
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. | ||||||||
| ||||||||
| ▲ | gatane 6 hours ago | parent | prev | next [-] | |||||||
You might as well look at HyperRogue, where the whole game happens to be on the same model. | ||||||||
| ||||||||
| ▲ | nooron an hour ago | parent | prev | next [-] | |||||||
I love it -- would like to use this daily. | ||||||||
| ▲ | hankbond an hour ago | parent | prev | next [-] | |||||||
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). | ||||||||
| ▲ | isoprophlex 6 hours ago | parent | prev | next [-] | |||||||
It's Greg Egan's notebook! | ||||||||
| ||||||||
| ▲ | levmiseri 5 hours ago | parent | prev | next [-] | |||||||
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. | ||||||||
| ||||||||
| ▲ | airstrike 2 hours ago | parent | prev | next [-] | |||||||
Now can you do the inverse and let us see it from the inside? | ||||||||
| ▲ | tompccs 2 hours ago | parent | prev | next [-] | |||||||
This is batshit, I love it | ||||||||
| ▲ | sys-ronin 4 days ago | parent | prev [-] | |||||||
Nice concept. really unique experience. so smooth. | ||||||||