Skip to content

sky-map-team/stardroid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sky Map

License Build Status Buy Me A Coffee

http://stardroid.app

Sky Map is the open-source astronomy Android app built for the community. You can download the official builds from the Google Play Store or from F-Droid.

FAQ

Is this Google Sky Map?

It was originally!

Sky Map has a long history, launching as Google Sky Map on the very first Android phone at Searchology 2009. In 2011 Google ceased active support and the original developers open-sourced it with Google's permission. Google's Open Source Programs Office kindly allowed us to continue to work on it as a personal project, provided we removed Google's branding from it and did not use Google's resources. Today it is still maintained by the same folks. While we no longer work for Google we continue to develop Sky Map using our own resources.

Then what is stardroid?

"Stardroid" was the internal name - you can see it's still used as an identifier in the code. Back in the day Google's lawyercats were concerned that 'stardroid' might attract the wrath of, let's say, followers of the Dark Side of the Force so we were strongly encouraged not to call it that. Plus, Google likes to name products after what they are (Photos, Calendar, Docs...). So, Sky Map it is.

Why does it lack feature X or look so dated?

Android has evolved significantly since 2009. While most of the code has been rewritten since its Google days, the architecture reflects its origins. We are currently working on a complete modernization of the app. In the meantime, we are continually inspired by the community of users who still find joy in its simplicity and quirks.

How can we help?

I'm glad you asked! We have a section on that below.


Support the Project

Buy Me A Coffee

Sky Map is a labor of love maintained in our spare time by a couple of ex-Googlers here in Pittsburgh. It is free, open-source, ad-free and we don't track you or sell your data.

If you enjoy using Sky Map, there are several ways to help keep the project alive:

  • Donations: Buy Me a Coffee — Every coffee helps keep the servers running and the code flowing!
  • Join the beta and give us feedback! Visit the Play Store on your phone.
  • Star the Repo: It costs nothing and helps others find the project.
  • Contribute: Submit a Pull Request or report an issue.

Code and Language Contributions

Yes, we know that Sky Map's code and UX is very dated. It needs a big overhaul.

In general, bug fix contributions are welcome, for example, simple one file fixes or dependency version upgrades. We're particularly grateful for fixed or new translations since we've lost the 100% coverage of non-English languages that we once had.

However, please email us (or file a feature request) first before embarking on any major changes or feature additions. We may have a different vision for the direction of the app and it would be a pity to do work that we can't accept and would be wasted.

A Note on Response Times

It is likely we'll be slow to respond to emails and PR requests. Depending on what else is going on it might be days, it might be months. I do apologize for that - life is busy. Sometimes the reply might be simply to point you at this documentation, which will seem very ungrateful and unfriendly.

Pro-tip: Small, focused PRs to fix bugs or upgrade dependencies etc are very easy for us to approve. If your PR does too much it might get stalled because even if 90% of it is welcome there might be 10% that we're not happy with. So keep them small if you can. Plus, we'll be able to review them faster.

Thanks for your contributions! They're definitely appreciated even if our slowness to respond might make it seem otherwise.


Technical Instructions

Building the project

You should see the following two directories:

  • app: Application source
  • tools: Source for generating binary data used by the app.

To build SkyMap, you can use Android Developer Studio or Gradle. Begin by creating a local.properties file containing the location of your Android installation:

sdk.dir=<path to your SDK>

Android Developer Studio can create this for you. You can regenerate the data files and rebuild everything with the build_skymap.sh script:

./build_skymap.sh

(or its f-droid equivalent).

If you just want to quickly regenerate an apk please see the following instructions (note: assembleRelease won't work because the f-droid flavor needs some tweaking which is done by the shell script - so make sure you build the Gms flavor specifically).

Building a debug apk

From the root directory execute

./gradlew assembleGmsDebug

The apk can be found in app/build/outputs/apk/.

Building a release apk

(Sky Map team only)

Create a file in the app directory called no-checkin.properties with appropriate values for the keys store-pwd= key-pwd= analytics-key=

and overwrite google-services.json with the correct file.

From the root directory execute

./gradlew assembleGms

or

./gradlew assembleGmsRelease

The apk can be found in app/build/outputs/apk/.

Running tests

Unit tests:

./gradlew test

Connected device/emulator required tests:

./gradlew app:connectedAndroidTest

Deploying

Plug your phone in and run the deploy.sh script. Pass the -d flag if you built the debug version. undeploy.sh does the reverse.

Coding Style

We follow the Google style guide (or try to). We wrap at 100 chars and we do not use the common Android style of prefixing member variables with a 'm'.