Skip to content

0-harshit-0/lunar-calendar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lunar Calendar

Lunar Calendar is an open-source application that provides a clear daily snapshot of the Moon and Sun. It delivers lunar phases and positional data in a clean, developer-friendly interface designed for both learning and integration.

The application retrieves ephemeris data directly from the NASA Jet Propulsion Laboratory Horizons system via https://ssd.jpl.nasa.gov/api/horizons.api, ensuring scientifically reliable Sun and Moon positions, angles, and distances.

Key highlights:

  • Daily lunar and solar snapshot
  • Clear presentation of moon phase, sky basics, and spatial positions
  • Open source codebase designed for extensibility and trust
  • Simple UI focused on clarity, engagement, and usability

API

You can try out the API live at: https://lunar-calendar-laeb.onrender.com/docs

  • It is using the free render service; wait for a few minutes if it's not active.
  • Rate limit: 60 requests per minute per IP.

Technical Implementation

  • NASA Horizons API integration and response parsing
  • TTL-based caching to optimize performance
  • Database persistence for computed results
  • Per-IP rate limiting for fair usage
  • Robust error handling and input validation
  • Client-side caching using localStorage with eviction policy
  • Graceful handling of network failures and invalid responses
  • UTC-based date validation and defaults
  • Extensible support for multi-planet ephemeris and visualization

Read

About

Lunar Calendar is an open-source application that provides a clear daily snapshot of the Moon and Sun

Topics

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors