cosinekitty / astronomy

Astronomy Engine: multi-language calculation of Sun, Moon, and planet positions. Predicts lunar phases, eclipses, transits, oppositions, conjunctions, equinoxes, solstices, rise/set times, and other events. Provides vector and angular coordinate transforms among equatorial, ecliptic, horizontal, and galactic orientations.
MIT License
496 stars 63 forks source link

Hi, guru are you interested in making a flutter/dart version? #368

Closed aipame closed 1 month ago

cosinekitty commented 1 month ago

I am not planning on adding any new programming languages to Astronomy Engine. The simple reason is, it is a huge amount of work! If someone wants to take the lead to add support for another language, I would help them do that. So far, most people who attempt this task give up after they realize how much work it requires: coding, unit testing, demos, and documentation for approximately 100 functions. The last time I did this (for Kotlin), it took me over a month working full time, and I had the help of a Kotlin expert. These days, my priorities are for other projects, especially when it requires learning another programming language, along with its associated tools and workflow, in the process.

A better option might be to for you to start with my pre-generated code in one of the supported languages (whichever you feel is "closest" to Dart) and port only the functions you need for your application. If you go this route, I can probably help get you unstuck with issues you run into, but you would have to take the lead.

I'm not sure, but is it possible for a Dart program to use code written in Objective C? If so, maybe you could use the C version of Astronomy Engine, as Objective C is a superset of C?