Skip to content

Python program using Skyfield (library) to calculate stargazing times and visible celestial objects with CSV export for the Denver area.

License

Notifications You must be signed in to change notification settings

cvcpatton/nightsky_helper

Repository files navigation

Denver Nightsky Helper (Python, December 2025)

Python program using Skyfield (library) to calculate stargazing times and visible celestial objects with CSV export for the Denver area.

Tech Stack

  • Python
  • Skyfield library
  • Data structures: Dictionaries, Lists
  • File I/O: CSV

Features

  • Computes sunset, dark sky, and sunrise times for Denver coordinates
  • Identifies visible planets and stars for chosen dates
  • Allows saving results to a CSV log for multi-day trip planning
  • Menu-driven interface with loops and input validation
  • Web scraping moon illumination data (advanced version)

Versions

  • Basic version to run the program in console, available now (Oct 2025) ⬅️
  • Full version using OOP and web scraping moon phases (Dec 2025)

Potential Upgrades

  • Modification for other location coordinates (this program defaults to Denver, Colorado, USA coordinates)
  • Weather API integration to check for cloud cover or precipitation
  • Moon phase/brightness that might interfere with viewing objects
  • Add a calendar of known celestial events such as meteor showers for additional results output

Sample Output
Sample Output

External Data Source
Moon Illumination Data Source: isaacbernat

Instructor Feedback
"Your Nightsky Helper demonstrates excellent understanding of modular program design, function documentation, and file handling. Each core function is clearly written, properly commented, and performs a distinct, single purpose. The program structure and pseudocode flow logically from user input to output, and your testing functions show thoughtful attention to verifying correctness. This submission is organized, user-friendly, and demonstrates both technical and creative strength. Excellent job."

Final project feedback: "Your final project is outstanding and shows a very high level of technical depth and creativity ... The separation of concerns across multiple modules shows excellent Python engineering practice. This is a highly polished project that demonstrates advanced problem solving skills, real world relevance, and strong mastery of external libraries."

How to Run

git clone https://github.com/cvcpatton/nightsky-helper.git  
cd nightsky-helper  
python nightsky-basic.py  

"Advanced" version instructions are in the README file in the nightsky-oop folder.

License
MIT License, Copyright (c) 2025 Catherine Patton

This project was created as part of my programming coursework. Please do not reproduce or distribute without proper credit. For questions about use, contact me.

About

Python program using Skyfield (library) to calculate stargazing times and visible celestial objects with CSV export for the Denver area.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages