Inspiration

Stargazing often feels overwhelming. Traditional astronomy apps flood you with dense sky maps, interactive star charts, orbital trajectories, and confusing magnitude ratings—leaving you staring at a screen trying to decipher what you're looking at. We wanted to build the opposite: a minimal, zero-clutter night sky guide that gives you an immediate verdict. Instead of making you analyze complex charts, Go Outside Tonight answers two simple questions in seconds: Is it clear enough to look up tonight? and What is the single best thing to see right now?

What it does

Whether you are in Berkeley, Tokyo, or Seoul, Go Outside Tonight instantly calculates local atmospheric conditions and pinpoints One Nice Thing to spot in the sky. It delivers an instant verdict—like CLEAR SKIES TONIGHT or PRETTY CLOUDY TONIGHT—so you immediately know if it's worth heading outside. Instead of overwhelming you with a catalog of stars, it highlights just one primary celestial target (such as Saturn, Jupiter, or a Waxing Crescent Moon) complete with its direction, altitude angle, peak viewing time, and a context-rich fun fact. Even on overcast nights, it highlights subtle phenomena to watch for if clouds break up, such as earthshine.

How we built it

We built Go Outside Tonight using React, Next.js, and TypeScript for a sleek frontend, styled with Tailwind CSS to keep the interface ultra-clean. To power the astronomical precision behind the scenes, we integrated open-source astronomy algorithms that perform real-time celestial coordinate transformations, calculating exact object altitudes using local sidereal time and observer coordinates:

sin(altitude) = sin(declination) * sin(latitude) + cos(declination) * cos(latitude) * cos(hour_angle)

We paired this with real-time atmospheric forecast data from the Open-Meteo API, calculating localized cloud density windows and factoring in atmospheric extinction coefficients to accurately predict target visibility near urban horizons.

Challenges we ran into

Our biggest hurdle was designing a scoring algorithm to dynamically pick the single "best" object to show the user. Visibility isn't just about brightness—a bright planet sitting low on the horizon behind heavy atmospheric haze is much harder to spot than a dimmer object overhead. Balancing object altitude, visual magnitude, lunar light interference, and local light pollution required extensive tuning. Additionally, summarizing variable hourly cloud coverage into a human-friendly, definitive verdict (e.g., 12% cloud cover between 5 PM and 2 AM) required custom windowing logic so users wouldn't have to read hourly weather tables.

Accomplishments that we're proud of

We are immensely proud of achieving a friction-free user experience that strips away the complex clutter of traditional astronomy tools. Designing an application that delivers a mathematically accurate, hyper-localized night sky recommendation in under a second, without requiring users to learn celestial navigation, was a massive design win. We also successfully implemented client-side astronomical physics calculations to handle dynamic coordinate adjustments anywhere on Earth.

What we learned

We learned how atmospheric air mass affects visual contrast in high-light-pollution metropolitan areas, and how to execute trigonometric coordinate transformations directly in JavaScript. Most importantly, we learned that constraint-driven UX, focusing ruthlessly on presenting just one highlight per night, creates a far more engaging and delightful habit than inundating users with endless features and menus.

What's next for Go Outside Tonight

We plan to introduce opt-in push notifications for rare celestial events, alerting users only when once-in-a-decade highlights occur nearby, like meteor shower peaks or bright visible comets. We also want to integrate AR compass directions so users can point their phone toward the horizon to easily find their night's highlight, alongside widget support for iOS and Android so you can check tonight's sky verdict right from your home screen.

Share this project:

Updates

Submission history