├── .gitattributes ├── .github ├── CONTRIBUTING.md ├── FUNDING.yml ├── PULL_REQUEST_TEMPLATE.md └── workflows │ └── main.yml ├── .gitignore ├── .travis.yml ├── CNAME ├── CODE_OF_CONDUCT.md ├── Dangerfile ├── LICENSE ├── README.md ├── buy_me_a_coffee.png ├── header.png └── helloworld.swift /.gitattributes: -------------------------------------------------------------------------------- 1 | Dangerfile linguist-documentation -------------------------------------------------------------------------------- /.github/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contribution Guidelines 2 | 3 | Please ensure your pull request adheres to the following guidelines: 4 | 5 | - Search previous suggestions before making a new one, as yours may be a duplicate. 6 | - **Make an individual pull request for each suggestion.** 7 | - Use the following format: `[PACKAGE](LINK) - DESCRIPTION.` 8 | - New categories, or improvements to the existing categorization are welcome. 9 | - Keep descriptions short and simple, but descriptive. 10 | - Don't include iOS versions or Swift versions in the description. 11 | - Emojis should be used with care in descriptions, we already had some problems with emoji render in GitHub. 12 | - End all descriptions with a full stop/period. 13 | - Check your spelling and grammar. 14 | - Make sure that your suggestion is positioned is **alphabetical** order 15 | - Make sure your text editor is set to remove trailing whitespace. 16 | - Make sure your project is elegible before open a pull request. 17 | 18 | #### Deleting 19 | 20 | Typical reasons for deleting project: 21 | 22 | - Doesn't build in the current Xcode 23 | - No updates / no longer works 24 | - Deprecated 25 | - Lacks license 26 | - Archived projects 27 | 28 | #### Projects are ineligible if: 29 | 30 | - Projects without tests. 31 | - Lack recent commit 32 | - Have lower than 50 stargazers in Github 33 | - README or code comments aren't written in English 34 | - README is not clear 35 | - Does not support the most common package managers (spm, cocoapods, carthage...) 36 | 37 | ### Projects that can be rejected: 38 | 39 | - Paid products 40 | - Have only one contributor 41 | - Projects with exact same functionalities as other projects that are already in AwesomeiOS 42 | - Projects with few functionalities 43 | 44 | Your contributions are always welcome! Thank you for your suggestions! :smiley: 45 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | github: vsouza 2 | ko_fi: awesomeios 3 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | Thanks for your contribution! This is a template that can make it easier when submitting your contribution: 2 | 3 | **Your Project**: _Example_ 4 | **Project URL**: _http://example.com/_ 5 | **Category**: _Good Websites_ 6 | **Description**: _This domain is for use in illustrative examples in documents._ 7 | 8 | Inclusion requirements: 9 | - [ ] Has 50 GitHub stargazers or more 10 | - [ ] Only one project/change is in this pull request 11 | - [ ] Isn't an archived project 12 | - [ ] Has more than one contributor 13 | - [ ] Has unit tests, integration tests or UI tests 14 | - [ ] Addition in alphabetical order (bottom of category) 15 | - [ ] Supports iOS 12 / tvOS 10 or later 16 | - [ ] Supports Swift 4 or later 17 | - [ ] Has a commit from less than 2 years ago 18 | - [ ] Has a **clear** README in English 19 | 20 | :heart: Awesome iOS Contributors 21 | -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- 1 | name: Convert README.md to HTML and Publish 2 | 3 | on: 4 | push: 5 | branches: master 6 | 7 | jobs: 8 | build-deploy: 9 | runs-on: ubuntu-latest 10 | permissions: 11 | contents: write 12 | id-token: write 13 | steps: 14 | - name: Checkout repo 15 | uses: actions/checkout@v3 16 | 17 | - name: Setup NodeJS 18 | uses: actions/setup-node@v3 19 | with: 20 | node-version: 18 21 | registry-url: 'https://registry.npmjs.org' 22 | 23 | - name: Test Converts markdown text to HTML 24 | uses: jaywcjlove/markdown-to-html-cli@main 25 | with: 26 | source: ./README.md 27 | output: index.html 28 | style: 'body { margin: 0; }' 29 | github-corners: https://github.com/vsouza/awesome-ios 30 | title: "Awesome iOS" 31 | markdown-style-theme: light 32 | 33 | - name: Deploy 34 | uses: peaceiris/actions-gh-pages@v3 35 | with: 36 | commit_message: ${{steps.tag_version.outputs.tag}} ${{ github.event.head_commit.message }} 37 | github_token: ${{ secrets.GITHUB_TOKEN }} 38 | publish_dir: ./ -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.do 2 | .DS_Store 3 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: ruby 2 | rvm: 3 | - 2.4.1 4 | before_script: 5 | - gem install awesome_bot 6 | - gem install danger 7 | script: 8 | - allowed_dupes=CONTRIBUTING,mocaplatform,Awesome-Swift-Education,XCDYouTubeKit,SRGMediaPlayer,PayPal-iOS-SDK,PerfectlySoft,gitter,instabug,weekly.awesomeios.com,goprimer 9 | - allowed_redirects=growthpush,awesomelinkcounter,eepurl,bluemix,amazon,facebook.com/groups,goo.gl,https://www.udemy.com 10 | - awesome_bot README.md -a 429 --allow-ssl --white-list $allowed_dupes,$allowed_redirects 11 | - danger 12 | notifications: 13 | email: false 14 | -------------------------------------------------------------------------------- /CNAME: -------------------------------------------------------------------------------- 1 | awesomeios.dev 2 | www.awesomeios.dev 3 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Contributor Covenant Code of Conduct 2 | 3 | ## Our Pledge 4 | 5 | In the interest of fostering an open and welcoming environment, we as 6 | contributors and maintainers pledge to making participation in our project and 7 | our community a harassment-free experience for everyone, regardless of age, body 8 | size, disability, ethnicity, gender identity and expression, level of experience, 9 | nationality, personal appearance, race, religion, or sexual identity and 10 | orientation. 11 | 12 | ## Our Standards 13 | 14 | Examples of behavior that contributes to creating a positive environment 15 | include: 16 | 17 | * Using welcoming and inclusive language 18 | * Being respectful of differing viewpoints and experiences 19 | * Gracefully accepting constructive criticism 20 | * Focusing on what is best for the community 21 | * Showing empathy towards other community members 22 | 23 | Examples of unacceptable behavior by participants include: 24 | 25 | * The use of sexualized language or imagery and unwelcome sexual attention or 26 | advances 27 | * Trolling, insulting/derogatory comments, and personal or political attacks 28 | * Public or private harassment 29 | * Publishing others' private information, such as a physical or electronic 30 | address, without explicit permission 31 | * Other conduct which could reasonably be considered inappropriate in a 32 | professional setting 33 | 34 | Critical examination of beliefs, including critical commentary on another person’s views, does not, by itself, constitute hostile conduct, harassment, or trolling. One of the underlying rationales of this Code of Conduct is to promote the free exchange of ideas, not to inhibit it. 35 | 36 | ## Our Responsibilities 37 | 38 | Project maintainers are responsible for clarifying the standards of acceptable 39 | behavior and are expected to take appropriate and fair corrective action in 40 | response to any instances of unacceptable behavior. 41 | 42 | Project maintainers have the right and responsibility to remove, edit, or 43 | reject comments, commits, code, wiki edits, issues, and other contributions 44 | that are not aligned to this Code of Conduct, or to ban temporarily or 45 | permanently any contributor for other behaviors that they deem inappropriate, 46 | threatening, offensive, or harmful. 47 | 48 | ## Scope 49 | 50 | This Code of Conduct applies both within project spaces and in public spaces 51 | when an individual is representing the project or its community. Examples of 52 | representing a project or community include using an official project e-mail 53 | address, posting via an official social media account, or acting as an appointed 54 | representative at an online or offline event. Representation of a project may be 55 | further defined and clarified by project maintainers. 56 | 57 | ## Enforcement 58 | 59 | Instances of abusive, harassing, or otherwise unacceptable behavior may be 60 | reported by contacting the project team at dev@lucasfarah.me. All 61 | complaints will be reviewed and investigated and will result in a response that 62 | is deemed necessary and appropriate to the circumstances. The project team is 63 | obligated to maintain confidentiality with regard to the reporter of an incident. 64 | Further details of specific enforcement policies may be posted separately. 65 | 66 | Project maintainers who do not follow or enforce the Code of Conduct in good 67 | faith may face temporary or permanent repercussions as determined by other 68 | members of the project's leadership. 69 | 70 | ## Attribution 71 | 72 | This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, 73 | available at [http://contributor-covenant.org/version/1/4][version] 74 | 75 | [homepage]: http://contributor-covenant.org 76 | [version]: http://contributor-covenant.org/version/1/4/ 77 | -------------------------------------------------------------------------------- /Dangerfile: -------------------------------------------------------------------------------- 1 | # Ensure there is a summary for a pull request 2 | fail 'Please provide a summary in the Pull Request description' if github.pr_body.length < 5 3 | 4 | # Warn when there are merge commits in the diff 5 | warn 'Please rebase to get rid of the merge commits in this Pull Request' if git.commits.any? { |c| c.message =~ /^Merge branch 'master'/ } 6 | 7 | # Only one library per pull request 8 | warn 'Too many changes (when adding, please keep it to one project per Pull Request)' if git.insertions > 1 9 | 10 | # Warn if pull request is not updated 11 | warn 'Please update the Pull Request title to contain the library name' if github.pr_title.include? 'Update README.md' 12 | 13 | # Check links 14 | require 'json' 15 | results = File.read 'ab-results-README.md-markdown-table.json' 16 | j = JSON.parse results 17 | if j['error']==true 18 | m = j['title'] 19 | m << ', a project collaborator will take care of these, thanks :)' 20 | warn m 21 | markdown j['message'] 22 | end 23 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2016 Vinicius Souza 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /buy_me_a_coffee.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vsouza/awesome-ios/2ef3a44d55735215a75a27436d47cbf737e18386/buy_me_a_coffee.png -------------------------------------------------------------------------------- /header.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vsouza/awesome-ios/2ef3a44d55735215a75a27436d47cbf737e18386/header.png -------------------------------------------------------------------------------- /helloworld.swift: -------------------------------------------------------------------------------- 1 | print("Welcome iOS Developers Code House!") 2 | --------------------------------------------------------------------------------