{"id":24969471,"url":"https://github.com/intrepidpursuits/cocoapods-introduction","last_synced_at":"2025-04-11T04:40:37.972Z","repository":{"id":151543732,"uuid":"78152980","full_name":"IntrepidPursuits/cocoapods-introduction","owner":"IntrepidPursuits","description":null,"archived":false,"fork":false,"pushed_at":"2018-04-12T12:36:30.000Z","size":650,"stargazers_count":0,"open_issues_count":0,"forks_count":17,"subscribers_count":35,"default_branch":"master","last_synced_at":"2025-03-25T02:43:45.281Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/IntrepidPursuits.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-01-05T22:21:50.000Z","updated_at":"2018-08-27T05:16:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"2110cb90-e349-4f93-9661-99527ac1d4e3","html_url":"https://github.com/IntrepidPursuits/cocoapods-introduction","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IntrepidPursuits%2Fcocoapods-introduction","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IntrepidPursuits%2Fcocoapods-introduction/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IntrepidPursuits%2Fcocoapods-introduction/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IntrepidPursuits%2Fcocoapods-introduction/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/IntrepidPursuits","download_url":"https://codeload.github.com/IntrepidPursuits/cocoapods-introduction/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248345274,"owners_count":21088241,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-03T14:38:21.940Z","updated_at":"2025-04-11T04:40:37.954Z","avatar_url":"https://github.com/IntrepidPursuits.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cocoapods\n\n\u003e CocoaPods is a dependency manager for Swift and Objective-C Cocoa projects. Its used in just about every iOS project here at Intrepid.\n\n\u003e Here is how to set it up.\n\n## Installing Cocoapods\n\n- Open Terminal\n- Enter command: `sudo gem install cocoapods`\n- Enter your password\n\n\u003e Wait for this to finish, don't touch your terminal.  It might take a couple minutes\n\n- Run command `pod setup`\n\n## Setting Up Command Line Text Editor\n\n##### Sublime\n\n- Download Sublime \u003ca href=\"http://www.sublimetext.com/\"\u003ehere\u003c/a\u003e\n- Install commandline tools following instructions \u003ca href=\"http://www.sublimetext.com/docs/2/osx_command_line.html\"\u003ehere\u003c/a\u003e\n\n\n##### Atom (My Preference)\n\n- Download Atom \u003ca href=\"https://atom.io/\"\u003ehere\u003c/a\u003e\n- Install atom commandline tools by opening Atom and selecting `Atom \u003e Install Shell Commands`\n\n\u003eContinuing forward, all commandline references will use the `atom` keyword.  Replace this with whatever you have designated as your text editor.\n\n## Setting Up Cocoapods\n\n### If New Project\n\n- Create your Xcode Project\n- Make sure that Create `git repository` is selected \u003e If you forgot to select this, just continue to the **Existing Project** section\n\n### If Existing Project\n\nIf your project is already setup with a git repository, skip this step.\n- Open terminal\n- Enter command `cd ~/path/to/your/project`\n- Enter command `git init`\n\n### Setup Gitignore\n\n- Open terminal\n- Enter command `cd ~/path/to/your/project` (if necessary)\n- Enter command `atom .gitignore`\n- Add `Pods/` to your gitignore\n- If your `.gitignore` is empty, add the following:\n\n```\n# Xcode\n#\nbuild/\n*.pbxuser\n!default.pbxuser\n*.mode1v3\n!default.mode1v3\n*.mode2v3\n!default.mode2v3\n*.perspectivev3\n!default.perspectivev3\nxcuserdata\n*.xccheckout\n*.moved-aside\nDerivedData\n*.hmap\n*.ipa\n*.xcuserstate\n\n# CocoaPods\n#\n# We recommend against adding the Pods directory to your .gitignore. However\n# you should judge for yourself, the pros and cons are mentioned at:\n# http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control\n#\nPods/\n```\n\n- Save your `.gitignore` file \u003ckey\u003ecmd\u003c/key\u003e + \u003ckey\u003es\u003c/key\u003e\n\n## Add Podfile\n\n- Open terminal\n- Enter command `pod init`\n- Uncomment the platform line to specify a platform _(ex._ `platform :ios, '8.0'`_)_\n\n\n### Add Pods\n\nYou add pods to your project using the following syntax:\n\n`pod '\u003c#pod name#\u003e', '\u003c#pod version#\u003e'`\n\nA simple example would look like this:\n\n`pod 'AFNetworking', '1.0'`\n\nOr, to get the latest version, you can omit the version from the declaration:\n\n`pod 'AFNetworking'`\n\nThere are more complex arguments regarding version available \u003ca href=\"http://guides.cocoapods.org/syntax/podfile.html#pod\"\u003ehere\u003c/a\u003e\n\n### Basic `Podfile` Example\n\n```\nsource 'https://github.com/CocoaPods/Specs.git'\n\nplatform :ios, '9.0'\n\ntarget 'ProjectName' do\n  pod 'SVProgressHUD'\n  pod 'AFNetworking'\nend\n```\n\n\u003e If you already have a workspace created, you'll need to specify this in your podfile by adding: `workspace 'MyWorkspace'`\n\n## Installing Dependencies\n\nNow we're going to integrate our libraries into the Xcode project.\n\n- Close Xcode Project\n- Open Terminal\n- Enter command `cd ~/path/to/your/project`\n- Enter command `pod install`\n\n\u003e Wait for this to finish, depending on the requirements of the `Podfile`, particularly with new projects, this may take a minute or two.  Just leave it.\n\nWhen cocoapods is done installing libraries, you will get a terminal readout that says:\n\n\u003e[!] From now on use `\u003c#Your Project#\u003e.xcworkspace`.\n\nFollow this instruction and henceforth, **use the workspace** instead of your project.\n\n## Importing And Using Libraries\n\n\u003e In your project, if you want to use a library you can do so by adding\n\n`import SomeCocoaPod`\n\n## More Info on Podfiles\n\nMore on the Podfile: http://guides.cocoapods.org/using/the-podfile.html\n\n### Pod Errors\n\nOccasionally, imported libraries will have errors  or warnings generated in Xcode, these can be silenced if desired by adding the following to the `Podfile`\n\n`inhibit_all_warnings!`\n\nTo prevent warnings on a library specific basis, you can use the following syntax:\n\n`pod 'SomePodWithWarnings', :inhibit_warnings =\u003e true`\n\n### Credit Where Credit Is Due\n\n- These notes are just slightly modified from Logan's https://gist.github.com/LoganWright/5aa9b3deb71e9de628ba\n- The dank grape gif is a masterpiece that belongs to FoxADHD\n\n# Follow Up Excercise - Using Cocoapods\n\n### Overview:\nMake sure you know how to use cocoapods! To test this knowledge, add a pod to this project and leverage what it has to offer.\n\n### Getting Started:\n1. Clone repository (or continue working off your previously cloned repo).\n2. Create a new branch off master and name the branch according to the form {name}/cocoapods-exercise  (e.g. epeterson/cocoapods-exercise).\n\n### Your Task:\n1. Add this pod to your project: https://github.com/cbpowell/MarqueeLabel\n2. Add a marquee'd label to the primary View Controller such that the following is true\n * The marquee scroll should wrap around to its original position after scrolling through the text (traveling left)\n * The marquee's animation curve is EASE IN / EASE OUT\n * The marquee scrolls at 30 pixels per second\n * The marquee will only scroll after being tapped by the user\n * The marquee's text is as follows: \"According to all known laws of aviation, there is no way a bee should be able to fly. Its wings are too small to get its fat little body off the ground. The bee, of course, flies anyway because bees don't care what humans think is impossible.\"\n * There is a 10 pixel buffer between the last character in the label and the first one\n3. Open up a Pull Request to be reviewed by your instructor, **But Do Not Merge It Into This Repo**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fintrepidpursuits%2Fcocoapods-introduction","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fintrepidpursuits%2Fcocoapods-introduction","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fintrepidpursuits%2Fcocoapods-introduction/lists"}