This page is intended to list out some small jobs that, if completed, would help KStars become better and more usable. There are both easy ones and hard ones.
If you are interested in contributing to KStars, but don't know where to start, this is probably the best place.
The best way to keep track of Development in KStars is to use the mailing list: email@example.com See The List Information Page to subscribe.
If you prefer IRC, we hang out on #kde-edu on irc.freenode.org
We keep track of bugs and wishlists on The KDE bugzilla
Please do not hesitate to ask if you need help with contributing! We're always looking out for contributors and will be happy to help you out.
The Sky Calendar tool lives in the Tools menu of KStars. The tool now has the labels that it needed badly. However, some lines still don't get labelled because the code isn't robust. The tool also fails at high latitudes. It would be helpful if the Sky Calendar was made complete and bug-free.
The Conjunction tool, for some reason, doesn't seem to be predicting solar eclipses correctly. There are some bugs on our bugzilla related to this as well. It would be useful if the Conjunction tool were made completely bug-free
KStars doesn't predict Lunar Eclipses. Neither does it display them. It would be really useful if it could do these things.
One way to do this would be to create a virtual Sky Point, maybe called 'EarthShadow', whose position would be just opposite the sun. An eclipse will be a conjunction between EarthShadow and the moon.
Another possible way to do it is to add functionality to KSMoon, so that we check if the moon is in the shadow of the earth before drawing its image.
There's an irritating crash condition on our bugzilla where trying to measure angular distances hangs KStars under some conditions. The backtrace is right there. It will be useful if this is fixed.
Now, this is a big task.
SkyObject classes (see skyobject.h under kstars/skyobjects) should have some standard way of storing names. Currently, some SkyObjects store untranslated names and some store translated names, leading to a big mess. SkyObject should probably store untranslated name strings internally, and return untranslated names upon calling name(). The objectNames() hashes should ideally have untranslated names as well.
So how do we find by translated name? The best way, probably is to have a "reverse translation hash". Since very few objects have translated names, it might be easy to maintain a global hash of translated names vs. untranslated names in some convenient place (probably as a static member of SkyComposite) and do searches for translated names through this.
Implementing this will fix a whole lot of translation-related bugs that are on our bugzilla, and make life for people who use localized versions easier.
This was originally a GSoC idea, but I thought it was a bit too "small" for a whole summer. The idea is to implement a class that handles moons of planets in the solar system in KStars.
Currently, we have JupiterMoons and SaturnMoons (thanks, Vipul!) classes. What should be done now, is to pack all the machinery that goes into these two classes into one generic class (probably called 'SolarSystemMoons'), various instances of which, could represent the moons of Jupiter, Saturn, Mars...
All our class would need to do, to assume the form of say, JupiterMoons, would be to read off data corresponding to JupiterMoons from some file, say "solarsystemmoons.dat"!
Now, the next task...
See Tools -> Jupiter's Moons. What if I could do this in general with SolarSystemMoons? [See earlier task for details]
There's a wishlist filed on bugs.kde.org that suggests that KStars must account for the bending of light around the sun, as predicted by General Relativistic calculations.
A quick hint is that the deflection in General Relativity is exactly twice what you would get if you assumed that the laws of gravity were Newtonian and the photon behaved like a massive particle.
There seems to be some detail that might be relevant to some extent in a paper by Marmet and Couture that I found off Google. It would be nice if we could correct for all those effects. In any case, it would be nice to work out the result for those who know GR.
Comets in KStars are currently drawn as dull green circles (at least in the default color scheme). That's not what they look like, in reality!
The machinery required to estimate nucleus and coma sizes, and tail lengths of comets are all there in KSComet and KSPlanetBase. What needs to be done, is to provide a proper representation of a comet based on these data on the Sky Map.
Remember that a comet's tail points away from the Sun! You can use this to fix the direction of the tail - so you have all information required to draw the comet.
Re-implement CometsComponent::draw() to draw better comets.
Charles Peng has already done a good amount of work to support this feature. It needs some polishing, though.
Jeamy Lee, a KStars user and contributor, notices that our Sun-Comet distances are wrong! This makes all calculated parameters come out incorrectly. Find his mail with some details here.
The aim of this task is to compare some more data against other software, step through the code, and find out where we are going wrong. You could use Jeamy's MPC Reader site to download the latest comet elements in KStars' format.
If you are a user of KStars and have some cool, simple ideas that would make your experience with KStars better, you are welcome to add them to the list above, or discuss them on the kstars-devel mailing list (or post them as wishlists / bug reports on the bugzilla).