LDS Music for iOS Development
As a community project, LDS Music for iOS relies heavily on volunteer developers to move the work forward. We need volunteers who can write code in Objective-C and Swift, and varying levels of experience are welcome. Here's how you can contribute!
Join the project and fill out the developer application form
You will need an LDS Account, which is the same account used to sign in to other Church websites.
- Go to the Projects page (log in if necessary).
- (If you've never signed up for an LDSTech project before:)
- Follow the link to the Individual Contributor License Agreement (ICLA). Read and agree.
- Click on Profile (on the grey navigation bar below the main navigation). Fill out all required fields on your profile (the ones marked with an asterisk*) and press Save.
- On the Projects page, find the project called LDS Music for iOS (the list is in alphabetical order). Click on the title.
- Near the top of the page there’s a little black button that says Join – click it!
By joining, you will automatically be added to the mailing list (hosted by Google Groups). Subscription settings can be changed on the project page.
Next, you will need to fill out the LDS Music iOS Developer Application. This allows us to get an idea of your development background and give you access on GitHub. Send an email to Samuel Bradshaw, the volunteer manager, or Hilton Campbell, the lead developer, if you have questions or if you don't hear back after filling out the form.
Set up your local development environment
- You will need the latest version of Xcode. If you do iOS development, chances are you already have Xcode installed. :)
- We use git for version control and to keep things in sync between GitHub and various contributors. You can use git through a git client like SourceTree (recommended), or via the command line.
- Fork the LDSChurch/LDSMusic-iOS repository (upstream/master) to your own GitHub account (origin/master), then use git (via SourceTree or command line) to clone that fork to your computer. Make sure you can open the app in Xcode and run it in the simulator.
Start contributing code
Our first priority is modernizing the codebase, converting classes to Swift and using the newest APIs. Next, we will switch our focus to improvements and features that will make the app more useful to members around the world.
- Choose a task from the Issues page on GitHub that has the label "starter-task", and assign it to yourself (if you don't have permissions to change the assignee, you can add a comment to claim the task).
- Do a git pull from upstream/master to your local repository to make sure you have the latest code.
- Do really cool coding stuff. After you're done, make sure the app builds and runs in the simulator.
- Do a git commit, then git push to your origin/master fork, then go to your fork on GitHub and create a Pull Request.
- Hilton will review your code for completeness, and make sure that it follows Church code standards and industry standards. You may be asked to make changes – this is a normal part of the process and helps us ensure a consistent, high standard of quality. If changes are requested, make changes on your local repository and push another commit. When everything is resolved, Hilton will merge the pull request. If you are working on multiple tasks, make a separate pull request for each.
Download the newest build of the app
Whenever a pull request is merged, a new build of the app is generated and added to the LDSTech downloads page.