-
Notifications
You must be signed in to change notification settings - Fork 3
Open Source
Pablo Villar edited this page Sep 28, 2016
·
43 revisions
🖐 First of all, make sure you've read Inaka's open source guidelines.
##Checklist
The following items must be followed for any Swift open source project.
💡 Use this reduced checklist for your github issues.
###General Items
It has a Github repo
The repo address must match this format: https://github.com/inaka/ProjectNameIt has an [Apache2 LICENSE](https://github.com/inaka/swift_guidelines/wiki/License) file
There must be a `LICENSE` file at the root level containing [this](License). Be aware of the copyright's year.It has a clear and useful [README](https://github.com/inaka/swift_guidelines/wiki/README-Template) file
There must be a `README.md` file at the root level following [this template](README-Template).It has a proper [.gitignore](https://github.com/inaka/swift_guidelines/wiki/.gitignore) file
Create a `.gitignore` file at the root level (or edit the existent one), and fill it with [this template](https://github.com/inaka/swift_guidelines/wiki/.gitignore) to prevent annoying files from being pushed.It's available in [cocoapods](https://github.com/inaka/swift_guidelines/wiki/How-To-Podify)
Also, make sure your library's name does not already exist in [cocoapods](https://cocoapods.org/). If so, consider renaming it.###Continuous Integration Items
It's hooked to HipChat rooms
The library should be hooked to the **iOS devs** room and the **open-source** public room.It's hooked to [Travis CI](https://github.com/inaka/swift_guidelines/wiki/Travis-CI-Hook)
Follow [these instructions](Travis-CI-Hook) for further detail.It's hooked to [Codecov](https://github.com/inaka/swift_guidelines/wiki/Codecov-Hook)
Follow [these instructions](Codecov-Hook) for further detail.###Source Code Items
Code is [documented](https://developer.apple.com/library/content/documentation/Xcode/Reference/xcode_markup_formatting_ref/)
Each exposed API must have a proper markup documentation following [the official guidelines](https://developer.apple.com/library/content/documentation/Xcode/Reference/xcode_markup_formatting_ref/).Code is tested
Aim for both unit tests and UI tests (if they apply), and remember that [100% coverage is a non-goal](https://jeremybytes.blogspot.com.ar/2016/08/code-coverage-should-not-be-goal.html).Every source file uses the [Apache2 License Header](https://github.com/inaka/swift_guidelines/wiki/License-Header)
For every `.swift` file in the project, remove the default header, and replace it with the [Apache2 License Header](License-Header).###Exhibition Items
There is a blog post about it
Contact [@Matias-Vera](https://github.com/Matias-Vera) for further information.It's shared on social networks
Contact [@Matias-Vera](https://github.com/Matias-Vera) for further information.It's shared on Reddit
Contact [@Matias-Vera](https://github.com/Matias-Vera) for further information.It's shared on Hacker News
Contact [@Matias-Vera](https://github.com/Matias-Vera) for further information.It has a landing page built in github pages
Contact [@Matias-Vera](https://github.com/Matias-Vera) for further information.##Current Projects Current projects are listed in this spreadsheet.