Show HN: Atlas of Space(atlasof.space)
680 points by pieix 1 day ago | 59 comments
nico 1 day ago
This is incredibly well done. Thank you!

Love that it works so seamlessly on mobile. I clicked on it expecting it to be almost impossible to use

Instead, I was able to easily navigate everything without getting lost

Also, the speeding up/down controls are excellent, very useful

guigui 1 day ago
Well done! I could spend a long time on this.

One minor suggestion: you should make the labels clickable instead of just the planets/stars. I found it difficult to click on a tiny pixel on screen.

derbOac 1 day ago
... also the orbits themselves ideally? Maybe I missed it but in looking at some of the larger orbits it was hard to zoom in and out to figure out what orbit went with what. It would have been nice to more easily click on the orbit.

I really like it though.

fuzzythinker 23 hours ago
Seconded. Also, please make the non-planet labels brighter. The contrast isn't good enough to read it.
aaroninsf 1 day ago
After 90s of playing I came back to add the same comment :)
saltminer 10 hours ago
This is incredible. I've also struggled to comprehend the scale of distance and time in space due to the sheer magnitudes involved, but this really puts it into perspective.

Some suggestions:

- Better documentation/help menu. (What is ∆t relative to? Some internal clock tick? Also, you should link the source code in the menu.)

- Arbitrary time adjustments so I could click on the date and set a custom date to view any point in the past or future

- The ability to see more than just the solar system

theoreticalmal 11 hours ago
This puts into perfect perspective why, soon after sunset this time of year. Venus is low to the west, Mars is slightly higher but in the East, and Jupiter is nearly directly overhead
Maultasche 1 day ago
This is very nice. I didn't know Pluto's orbit was more inclined than many of the others.

It also gives me strong "The Expanse" vibes. Probably because there are so many orbital bodies shown that were mentioned in those books. I also learned that Pallas is an actual asteroid.

pieix 1 day ago
Appreciate the comment! The Expanse and Paul McAuley's Quiet War series both get a lot of inspiration credit for this project. I tried to include every body that has some "brand recognition", whether from fiction or from real spacecraft missions. There are actually quite a few asteroids and comets that have been visited in real life — NASA, ESA, and JAXA have been doing amazing things in the Asteroid Belt over the past few decades.
9dev 16 hours ago
Seconded, the whole design seems like something straight out of the books. And it also feels like it's just waiting for other solar systems to be included there…
thinky_thoughts 1 day ago
Where is the ring gate?
getwiththeprog 23 hours ago
A 'fictional' toggle, with items and locations from movies and TV would be cool.
ezascanbe 22 hours ago
Wonderful! I showed my kids (9 and 10) and we really enjoyed zooming in and out, reading about different Celistial bodie. We were all really intrigued about the "Trans-Neptuinan Objects" and the strange orbits.

We spent a whole 30 minutes afterwards talking about the existence of aliens and how long it would take to reach Alpha Centauri at our current level of technology versus light speed, and the further unpacking faster than light travel depicted in science fiction.

Thank you!

pieix 22 hours ago
Thank you for sharing this with your family and for maybe increasing the number of space nerds on this planet! Exactly what I was hoping for with this project.
santiagobasulto 1 day ago
The project is amazing, thanks and congrats.

A bit of an off-topic comment, I can't cease to be amazed by the quality of HTML apps we can build these days. I remember the days when rendering too many rows on a table could completely break the browser.

pieix 1 day ago
Thank you and not off topic at all, I was thinking this the whole time I was working on this project. The modern browser is magic.
legogt 5 hours ago
Incredible work! My son really had a blast scrolling around and exploring last night.

Did you take any inspiration from Celestia (https://celestiaproject.space)? It's been over 15 years since I last really used it (and starts with defaults not geared towards visualizing just our local solar system) but seems to have a lot of the features others have suggested. Might be useful to poke around and see how they solved things like time adjustments, selecting POIs, etc.

martyvis 1 day ago
It doesn't seem it is showing the tilt for Earth correct. When I zoom in for around now, the North Pole is in full sun rather than mid Winter. (I'm in Australia so I don't know if it is somehow using my local timezone wrongly)
pieix 1 day ago
Hey, thanks for flagging this. I had the sign flipped for Earth's axial tilt. Fixed now!
javierluraschi 13 hours ago
I would love to be able to zoom out beyond solar system and grasp a sense of how far we are from other stars and our place in our galaxy, etc.
dr_dshiv 1 day ago
I love this.

It’s really easy to get lost in Space when you zoom out and back in after twisting. I can see the planets on the edge of the screen, but can never seem to find them again.

Reloading, of course, fixes all. But maybe some compass to click on to recenter on yourself (earth) like on google maps.

araes 1 day ago
Not surprisingly, this is actually one of the main issues with space travel and sending probes almost anywhere. Get slightly misasligned and you have take sightings on star patterns to try to somehow figure out where you are and what your orientation is. Voyager 1 and 2, Pioneer 10 and 11, and New Horizons all had / have variations on those systems.

Spacecraft Attitude Determination, https://en.wikipedia.org/wiki/Spacecraft_attitude_determinat...

Star Tracker, https://en.wikipedia.org/wiki/Star_tracker

verzali 13 hours ago
I've had colleagues working on a pulsar navigation system to improve on star sightings.

The idea is to look for the X-ray signals coming from pulsars and then use the frequency of the pulse to identify the pulsar and then match that to a known map to figure out where you are. It's pretty cool and theoretically can work even for interstellar spaceflight.

https://en.wikipedia.org/wiki/Pulsar-based_navigation

dr_dshiv 1 day ago
Not to mention the astroinertial guidance system on ICBM nuclear missiles.

To wit, there are 12 Ohio class submarines each with 20 trident missiles each carrying 12 maneuverable nuclear warheads (475 kilotons each).

The missiles are launched under water, reach Mach 18 in 2 minutes, and don’t need GPS — they use the stars to deliver their payload.

I saw a test missile launch once before. It still terrifies me.

https://en.wikipedia.org/wiki/Ohio-class_submarine

divbzero 1 day ago
Along the bottom toolbar there’s a “Reset” button (circular icon with an arrow) that recenters the UI.
divbzero 1 day ago
I love that you’re depicting the Solar System accurately and to scale. It’s always bothered me that planetary orbits are often shown as equally-spaced concentric circles.

The Voyager missions could be interesting to include as you consider adding to your atlas.

pedrogpimenta 16 hours ago
Excellent project! I want my kids to grow up so we can explore this together :)

I'd love a "real-time" clock but I don't even know if that's feasible!

3D30497420 14 hours ago
Second a real-time view. My wife has gotten into planet/stargazing and it would be very cool to see in real-time where, say, Venus is, while also seeing it in the night sky.

Also potentially very cool: This as a real-time screensaver. I'd pay for that!

dcuthbertson 14 hours ago
Stellar work!

I couldn't resist the pun, but all kidding aside this space atlas is truly wonderful.

deveesh_shetty 23 hours ago
It works seamless in mobile, that's just mind-blowing!

Curious to know, - Is the Source code open source? - If not what is the stack you used to build this.

pieix 22 hours ago
Yep, all open source: https://github.com/gordonhart/atlasof.space

It's a static React app using Three.js for rendering and a few backend functions deployed on Netlify. It's been a pretty great experience deploying to Netlify, though I didn't expect the attention from HN to go way over my 100GB of free tier bandwidth!

deveesh_shetty 8 hours ago
That's pretty cool. Hopefully you were not billed too much

Will take some time to dig in the code, always wanted to try out threejs.

Thank you

andystanton 1 day ago
Love it, thank you for sharing. Can't wait to show my kids later!

Are the background stars randomly generated or do they correspond to the actual galaxy? Distant points of reference would be interesting to see.

pieix 1 day ago
Thank you! The background stars are a texture that I found on solarsystemscope.com, and _should_ correspond to the actual orientation of the firmament WRT your frame of reference. I'd love to add labels for salient stars.
colkassad 1 day ago
This is great. It's interesting how two very remote dwarf planets with widely different orbits are so close to each other right now (90377 Sedna and 2012 VP133).

EDIT: On further thought, I noticed another kind sorta nearby. I wonder if this is just a matter of looking for them in that area and that there could be a lot more that are undiscovered?

pieix 1 day ago
Your edit is spot on — there's a lot out there in the Kuiper Belt / Oort Cloud that we don't know about. It's hypothesized that there are many objects out there, with more mass than in the Asteroid Belt. It's no coincidence that the ones we know are all near their perihelion currently.
hajola 1 day ago
This is awesome. I went looking for FarFarOut ( https://en.wikipedia.org/wiki/2018_AG37 ), maybe would be cool to add it?
pieix 1 day ago
Great suggestion, just added it. Thanks for teaching me about FarFarOut.
ripe 10 hours ago
Beautiful!

I am currently working on a canvas app (not Three.js, though), so I will look through your code, too.

Thank you for doing such an excellent job.

SkiFreeWin3 1 day ago
space question -- why are the three outer-most bodies as consistent in general direction as they are? it looks like something blasted us (our solar system) in a specific direction. (speaking of, is there some astronomical/solar system analog for cardinal directions? like how would I say, "looks like we've been blasted in a north-east direction"
pieix 22 hours ago
There's a lot more out there that we just haven't seen, probably in all directions. Hard to spot stuff that far out from the sun.

The analog for cardinal directions is the direction of Vernal Equinox — the line in the ecliptic plane (Earth's orbit) formed from the Earth to the Sun at the March equinox. (there's an indicator for this in the corner of the app). This is usually treated as +x, with rotations within the ecliptic given relative to this axis. Then there's ecliptic north and ecliptic south that define +z and -z as the normal vector to the ecliptic plane.

low_tech_punk 22 hours ago
The visual design details make it feel like the navigation system of Elite Dangerous! Well done!

A sound effect would be nice. Just an idea.

tejtm 3 hours ago
it has super realistic space sound effects already
melvinmelih 1 day ago
I always see these videos [1] about helical movement of the bodies, which intuitively make more sense to me rather than assuming that the Sun itself is static and the bodies moving in a static circle around it. Is that really true?

https://youtube.com/shorts/HDSKuln-5qU?si=c8Uzw4zCQ22t5MyO

13 hours ago
14 hours ago
smusamashah 1 day ago
I recently learned that from a distance moon looks like revolving around sun rather than earth. It's orbit does not mak e loops/spirals. Instead it's more like a dodecahedron. Or if seen in isolation around sun, it will look like normal circular orbit.

Can you add an option to switch drawing orbit of moon around the sun of its planet instead of its orbit around its planet?

mkl 15 hours ago
You probably intended to say dodecagon - a dodecahedron is a totally different kind of thing: https://en.wikipedia.org/wiki/Dodecahedron. It's not that tidy, though, as after a year the moon is not where it started. The moon goes through closer to 12 and a half orbits around the Earth in a year than 12, so it doesn't trace out a dodecagon. The moon's path does look pretty circular though, as the average distance between Earth and the moon is only about 0.00257 the distance between Earth and the sun. https://en.wikipedia.org/wiki/Orbit_of_the_Moon#Path_of_Eart...
blakewatson 1 day ago
I can’t get enough of anything that helps me wrap my mind around the scale of objects and distances in the universe.

I recently discovered Epic Spaceman on YouTube, who makes incredible visual comparisons to help understand these scales. https://www.youtube.com/@EpicSpaceman

There’s also Universe Sandbox 2. But tbh this Atlas of Space is more accessible to me due to my various input limitations.

Space Engine let’s you explore the entire observable universe.

whearyou 17 hours ago
If anyone here is a fan of strategy games and found this as totally awesome as I did, check out the game Terra Invicta on Steam.

I’m embarrassed to admit how many hours I dumped into it.

ochrist 1 day ago
Great. I really like this.

What about doing something similar for the neighborhood of our solar system? E.g. all stars within 25 or so light years.

infogulch 1 day ago
What is the denominator in dt? 60 ticks per second? Definitely not per second. It should be mentioned somewhere, like a tooltip.
pieix 1 day ago
Good callout — it's the animation rate for your browser, which is driven by your display and conditions on your machine (I've seen between 30-120Hz on my Macbook depending on the monitor used and device power status).
infogulch 21 hours ago
Would it be crazy to suggest scaling the speed by the time taken to calculate the previous tick (moving average?) to make the dt number a consistent irl rate? Say the user sets it to 8h and their computer can run at 30tps, then set the per-tick rate to 8h/30; if their computer can run at 60tps then set the rate to 8h/60, etc.
seanw444 1 day ago
I was just gonna say, 8 hours per second does not match up with t advancing by 3 weeks per second.
pmontra 1 day ago
It's great but especially on mobile it's very difficult to center the view on a planet, zoom on it and follow it around the sun. On a desktop I eventually manage to click on it, then zoom and it stays in the center of the screen.
a13n 23 hours ago
Please add the ability to make time go backwards in addition to forwards!

Also, when you click on the stop button (should probably be a pause icon), the icon should change to a play button.

Final feature request: relativistic mechanics pls.

detritus 1 day ago
Great stuff! Just a wee thing - when I read "Atlas of Space" I immediately assumed it went beyond the solar system and clicked-through expecting to be able to track stars at least a few light years out. Reading your explanation here though, I see that's not intended.

Whatever, a job to be proud of!

pieix 1 day ago
I hear you, if we had a punchier name for the Solar System (ideally with its own TLD?) I for sure would have gone for it. Anyway, thanks for the nice comment.
readthenotes1 1 day ago
Orrery
pieix 1 day ago
A big inspiration for this project was the "Solid Orrery" from Alastair Reynolds' Revelation Space series. I nearly went with this name!
digging 1 day ago
Super cool! Like a simpler (not in a bad way) Universe Sandbox.

I'm reminded of the astronomical-visualization app I created at the beginning of my career and abandoned. This makes me want to go back to it again!

lbeckman314 1 day ago
This is so cool! Is the codebase available for poking around (no worries if not!)

Now if only there was an option to export an SVG to à la https://github.com/samyk :p

Fantastic project!

fuzzythinker 23 hours ago
Please add ability to click on the orbit path. Others have suggested clicking on label, but even after adding that ability, the labels can be hidden.
taknil 1 day ago
I do not know how that would be possible with the technology used, but having a deeplink to a planet or object would be cool à la https://atlasof.space/Nix
nanbing 23 hours ago
Fantastic! Will we venture beyond the solar system in the future, encompassing more astronomical objects? If so, that would be wonderful.
maxmcd 1 day ago
This is so awesome. I've wanted something like this where you could visit all scales of the universe from tiny atoms, to the galaxy, to the broader universe. Does something like that exist in some form?
blakewatson 1 day ago
I think https://spaceengine.org/ fills part of your request. I haven't played it but I've watched videos about it and it looks like you can jump anywhere around the observable universe and look at any object you want.
dotancohen 1 day ago
This looks terrific. But it's Windows-only.
digging 1 day ago
I think it's available on Steam which would mean you could theoretically use it on Linux with Steam's Proton compatibility layer.
dotancohen 18 hours ago
Can that be tested before purchase?
dcuthbertson 14 hours ago
Steam has a generous return/refund policy [0], so you could buy it, test it, and if it doesn't work request a refund.

[0]: https://store.steampowered.com/steam_refunds/

UncleSlacky 1 day ago
Celestia might also give you some ideas:

https://github.com/CelestiaProject/Celestia

w10-1 1 day ago
Really nice - tested on mobile and desktop.

Nice touches:

- Motion from the running clock

- Knowing where the planets are on a given date

Wish list:

- Scroll through time

- Hide non-planets, esp. to see inclinations of the planets

- Display the orbital center

- Reframe as Atlas of Home

sroussey 1 day ago
This is amazing!

One option for the future: orbits of celestial bodies influence each other. Is it enough to see when say, earth and mars get close?

philipwhiuk 1 day ago
Not really no.

It is true that we don't actually orbit the centre of the Sun, but it is very close.

The problem with Mars getting close is that Mars is quite small and the Earth is a long way away and there are many other planets, some much more massive.

Mercury is actualy lot closer a lot more often (Mercury is the most-often close to all the planets by virtue of it's orbit close to the Sun).

Someone explains it in a bit more detail here: https://www.quora.com/How-do-the-surrounding-planets-influen...

There's a paper suggesting there's some 2.4 million year climate cycle https://www.nature.com/articles/s41467-024-46171-5 but that's too subtle for this visualisation.

iforaa 1 day ago
Nice project! Is it possible to go backwards in time?
krishadi 1 day ago
This is crazy good! Thanks for building it...

Incredible to see the speed at which some of the bodies are moving ... Especially Bennu...

matthewsinclair 1 day ago
#til that there is an object in (or near, I guess) our solar system called “FarFarOut”.
divbzero 1 day ago
Did you use any libraries to help render the canvas? Or is the code built up from plain JavaScript and DOM APIs?
pieix 1 day ago
Three.js for all of the fun 3D stuff, vanilla canvas drawing for annotations like dots/labels/offscreen indicators. Three.js is an incredible project.
nirav72 1 day ago
wow, this is amazing. Learned quite a bit just by looking at the orbits of various objects. Especially pluto. Didn't realize pluto had such an odd orbit relative to the ecliptic plane of the other planets and planetoids. I'm assuming that's due to Neptune?
input_sh 1 day ago
Not only tilted, but far less "round" than Neptune's orbit, which occasionally results in Pluto being actually closer to the Sun than Neptune (every 500 or so years). They also kinda "dance" with each other around the Sun in a 2:3 ratio (2 x Pluto's year / 3 = Neptune's year).
aghilmort 1 day ago
stunningly smooth execution!

options for details, say first or second order lagrangian wells, interplanetary transport network, object launched from some planet on some trajectory, in whatever natural order of easy to hard feels right, almost like KML options on regular maps

the-mitr 1 day ago
Very beautifully done. Thanks for sharing, perhaps you can add the Trojan asteroids in the next iteration.
pieix 1 day ago
Co-orbitals are top-of-mind right now! As-is they can be simulated without issue (the system is defined as a DAG where each body defines the parent bodies it is gravitationally influenced by, e.g. Sun+Jupiter+Saturn for the trojans) but I haven't yet figured out how to get the proper starting position+velocity for them in the current epoch. I foresee a deep dive down the ephemeris rabbit hole in my future...
krishadi 1 day ago
Initial positions and velocities are interesting. How did you get about that info?

I would love to read about how the orbital trajectories are calculated, and how is it done for co orbitals. Do you plan to write a blog on this?

pieix 1 day ago
Initial conditions are modeled by Keplerian elements around the main parent body. These are 6 scalars that describe the size, shape, and orientation of the orbital ellipse as well as the body's position along it at a given time (epoch). I scraped these values from various places including research papers, JPL databases, Wikipedia pages, and university web pages.

From there everything is mapped into a consistent epoch (now) and the initial position/velocity are calculated using a Keplerian->Cartesian transformation (the math here is a more or less straightforward coordinate transformation). The physical simulation is then run by updating these 2 Cartesian vectors, applying gravitational acceleration over ∆t.

This works pretty well, all things considered, but there's a lot of room for improvement to account for solar wind, relativistic effects, planets not being perfect spheres, etc. The Keplerian elements are also just an approximation of the true orbit, and this approximation can show up at high zoom levels (it's why planets don't always line up perfectly with their ellipses when you zoom in). I'm also still figuring out how best to get the initial position/velocity for objects that aren't in simple elliptical orbits (co-orbitals like the Trojans, objects on escape trajectories like Voyager probes). There's a lot for me to learn, maybe later I will write a blog post!

warpsprung 1 day ago
The one problem though that destroys all of this is that there is no curvature on earth: https://youtu.be/VLGBW6ouvl8?si=VLd5z2axJEyjkovH
pryelluw 1 day ago
Is there a way to lock the screen in order to be able to scroll around on mobile?
jimbob45 1 day ago
Came to ask the same thing.
CelticBard 1 day ago
Why is the sun called Sol? And not Sun? I thought Sol was a sci-fi thing?
redeux 1 day ago
Wikipedia lists Sol as one of the names for our star.

https://en.m.wikipedia.org/wiki/Sun

jannes 1 day ago
I guess it's just a less common word for sun.

https://en.wikipedia.org/wiki/Sol_(Roman_mythology)

> Sol, borrowed from Latin, is used in contemporary English by astronomers and many science fiction authors as the proper name of the Sun to distinguish it from other stars which may be suns for their own planetary systems. [citation needed]

dmd 1 day ago
It's the name of our sun. Sun is what it is (or star). Sol is its name.
astrolx 1 day ago
I don't know any solar physicist who calls our sun "sol" (and I know many), neither have I come across scientific papers doing so. A sol is a martian day though!
nox101 17 hours ago
I've never heard any solar physicist refer to "Sun". I have heard "the Sun" and "Our Sun".

"The Boss said please take the day off"

"Our Boss is nice"

"Jill is the boss"

"The Sun is bigger than any planet in our solar system"

"Our Sun is 8 light minutes away"

"Sol is the name of our sun"

I've not once heard a solar physicist use "sun" as a name

"Sun is bright" - bad grammar

pieix 1 day ago
Fair point, I'll change (only after outing myself as somebody who pays more attention to writers than physicists)!
jgrowl 1 day ago
I don't think you should feel any pressure to change it. The Solar System belongs to the writers just as much as it does to the physicists and unless your target audience is specifically physicists, then the average visitor of your site will be more likely a consumer of sci-fi than a practitioner of physics.

The argument is rather pedantic to me since the word Sun comes from the old English, Germanic, and European, whereas Sol comes from the Latin, Helios from the Greek, svár Sanskrit, etc. They are all valid names for our local star.

glxxyz 1 day ago
Sol is the Roman sun god and the latin for 'sun' so is sometimes used.
14 hours ago
jimswhims 1 day ago
Beatiful, maybe add a pan control, and configurable starting time + dt?
pieix 1 day ago
You can currently pan with right click, and I like the idea of a configurable starting time! Everything is mapped into the current epoch when you load your browser at the moment.
jimswhims 1 day ago
Ah i see, i had tried right click and it wasn't working, but that was because I had a planet selected with its details showing, in the normal view it's fine. Makes sense not to pan when an object is selected, i guess.

I just had the browser window maximized while I was away from it for a while. This would make a nice active desktop, though I don't know enough about the software stacks involved with that to know whether it's possible.

AndyKluger 1 day ago
An alternative (like arrow keys) would be great, as I don't think I can right-click-drag with my touchpad.
1 day ago
ge96 1 day ago
Awesome I like these 3D infinite canvas things
whereistejas 12 hours ago
So pretty!
busymom0 1 day ago
Is there a way to show only spacecrafts? I am having a hard time finding any
philipwhiuk 1 day ago
There aren't any - it's just natural stellar bodies.
busymom0 1 day ago
There's one at least. But you have to click on the toggle visibility button at the bottom of screen, then switch on spacecrafts. Then it will show you at least one - the Tesla Roadster launched in 2018.
pieix 1 day ago
Nice find. That's the only one up there currently, mostly because it's in a simple heliocentric orbit (most spacecraft are not). I want to add more but need to figure out how to properly find their current position+velocity to start the physical simulation.
busymom0 1 day ago
I think you should switch on the spacecrafts toggle by default. It's pretty cool seeing at least the roadster in there!
karrob 1 day ago
incredibly cool omfg
modelorona 1 day ago
Awesome project!
adamc 1 day ago
I get "secure connection failed".
SubiculumCode 1 day ago
oh shit Bennu. :)
a3w 1 day ago
You forgot to add planet X

/s

m0llusk 1 day ago
"Dwarf Planet" is probably a good compromise given the ongoing controversy of Pluto's status and most appropriate label.