We all rely on open source; our software ecosystem is built on open source. It’s time for you to get started and publish your first package. In this chapter, we’ll discuss the steps that you should consider taking before you can release your project. This will require a deep understanding of all the concepts we've discussed in this book.
From a great architecture to properly used design patterns, open sourcing a project is an exciting endeavor. Not for the faint of heart, it’s full of traps and mistakes that can be easily avoided.
Great projects exhibit great documentation, and documentation starts with documenting the public and private API appropriately. Documenting the internals of your project is a great way to ensure a smooth onboarding of contributors, but how do you validate that their contributions are working properly? Continuous integration services, such as Travis, Circle and bitrise.io, offer free tiers for open source projects. GitLab is also a strong contenter as they offer free private projects as well as CI and CD pipelines. Every now and then, as an iOS developer, you will want to publish updates to your beta testers. Fastlane can automate this process and usually works flawlessly on the CI services. Lastly, from your first commit to your first contributor, you will meet various individuals with questions, bugs, feature requests, and more. Being prepared for this is a great way to get all of these tedious project management aspects off your plate.
In this chapter, we will cover the following topics:
- Learning to document your code, generate documentation, and use GitHub Pages to publish it
- Configuring Travis and GitLab to build, run, and test your app automatically
- Using fastlane to automate the delivery of your app to the testflight, fabric, or hockey app
- Tips and tricks about maintaining open source projects