{"id":2302,"url":"https://github.com/hossamghareeb/Facebook-POP-Tutorial","last_synced_at":"2025-08-02T23:33:06.826Z","repository":{"id":145508466,"uuid":"25478329","full_name":"hossamghareeb/Facebook-POP-Tutorial","owner":"hossamghareeb","description":"Facebook's Pop Framework, By Examples","archived":false,"fork":false,"pushed_at":"2015-07-26T15:36:45.000Z","size":4257,"stargazers_count":186,"open_issues_count":2,"forks_count":31,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-08-16T03:33:04.287Z","etag":null,"topics":["animation","facebook","facebook-pop-tutorial","pop","pop-framework","tutorial"],"latest_commit_sha":null,"homepage":"","language":"Objective-C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hossamghareeb.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}},"created_at":"2014-10-20T17:39:07.000Z","updated_at":"2024-07-19T03:03:55.000Z","dependencies_parsed_at":"2023-04-01T10:26:46.018Z","dependency_job_id":null,"html_url":"https://github.com/hossamghareeb/Facebook-POP-Tutorial","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hossamghareeb%2FFacebook-POP-Tutorial","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hossamghareeb%2FFacebook-POP-Tutorial/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hossamghareeb%2FFacebook-POP-Tutorial/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hossamghareeb%2FFacebook-POP-Tutorial/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hossamghareeb","download_url":"https://codeload.github.com/hossamghareeb/Facebook-POP-Tutorial/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228503183,"owners_count":17930529,"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":["animation","facebook","facebook-pop-tutorial","pop","pop-framework","tutorial"],"created_at":"2024-01-05T20:16:10.306Z","updated_at":"2024-12-06T17:31:00.124Z","avatar_url":"https://github.com/hossamghareeb.png","language":"Objective-C++","readme":"\u003ch3 align=\"center\"\u003eFacebook's Pop Framework, By Examples\u003c/h3\u003e\n---\n\nThis project is a tutorial ([Check tutorial here](http://www.appcoda.com/facebook-pop-framework-intro/ \"Facebook Pop Tutorial\")) for how to use Pop framework by Facebook. Its very easy and effecient framework that helps you to make decent animation in no time. \nIn this project you will find some simple demoes, they are not big demoes but I promise you, they will help you in mastering the framework.\n\n### What is Pop?\nPop is an extensible animation engine for both iOS and OS X. In addition to basic animations including Linear, Ease-In, Ease-Out, Ease-In-Ease-Out animations, it supports spring (at the time of its release, spring animation was not supported in iOS), decay and custom animations:\n\n- Spring: dynamic animation that creates a nice bouncing effect.\n- Decay: dynamic animation that brings a movement to a smooth halt.\n- Custom: because the engine is designed to be extensible, you can create your own custom animations.\n\nThe Pop API is very developer friendly that lets you easily build some realistic, physics-based interactions. For instance, here is the code snippet for creating a spring animation on a text label:\n\n```Objective-c\nPOPSpringAnimation *sprintAnimation = [POPSpringAnimation animationWithPropertyNamed:kPOPViewScaleXY];\nsprintAnimation.toValue = [NSValue valueWithCGPoint:CGPointMake(0.9, 0.9)];\nsprintAnimation.velocity = [NSValue valueWithCGPoint:CGPointMake(2, 2)];\nsprintAnimation.springBounciness = 20.f;\n[self.textLabel pop_addAnimation:sprintAnimation forKey:@\"springAnimation\"];\n```\n\n\u003ch3 align=\"center\"\u003eFor Swift Lovers\u003c/h3\u003e\n---\nNavigate to this \"Swift Version\" folder or ([click here](https://github.com/hossamghareeb/Facebook-POP-Tutorial/tree/master/Swift%20Version \"Swift Version\")) to see the full working exmples written in Swift.\n\n\n\u003ch3 align=\"center\"\u003ePop Examples\u003c/h3\u003e\n---\n\n### Animate UITableView cells selection:\n\u003cp align=\"center\"\u003e\u003cimg src =\"https://github.com/most-wanted/Facebook-POP-Tutorial/blob/master/screenshots/pop-animation-1-1.gif\"/\u003e\u003c/p\u003e\n\n### Facebook Messenger Send/Like animation:\n\n\u003cp align=\"center\"\u003e\u003cimg src =\"https://github.com/most-wanted/Facebook-POP-Tutorial/blob/master/screenshots/pop-animation-2.gif\"/\u003e\u003c/p\u003e\n\n### UITextField wrong entry animation:\n\n\u003cp align=\"center\"\u003e\u003cimg src =\"https://github.com/most-wanted/Facebook-POP-Tutorial/blob/master/screenshots/pop-animation-3-2.gif\"/\u003e\u003c/p\u003e\n\n### Custom Transition for Modal ViewControllers:\n\n\u003cp align=\"center\"\u003e\u003cimg src =\"https://github.com/most-wanted/Facebook-POP-Tutorial/blob/master/screenshots/pop-animation-4.gif\"/\u003e\u003c/p\u003e\n\n\u003ch3 align=\"center\"\u003eLicense\u003c/h3\u003e\n---\n\nThe MIT License (MIT)\n\n**Copyright (c) 2014 Hossam Ghareeb (hossam.ghareb@gmail.com)**\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","funding_links":[],"categories":["UI","Animation"],"sub_categories":["Animation","Other free courses"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhossamghareeb%2FFacebook-POP-Tutorial","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhossamghareeb%2FFacebook-POP-Tutorial","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhossamghareeb%2FFacebook-POP-Tutorial/lists"}