{"id":19999268,"url":"https://github.com/antoniocasero/arrows","last_synced_at":"2025-04-09T18:18:22.402Z","repository":{"id":56902383,"uuid":"150832114","full_name":"antoniocasero/Arrows","owner":"antoniocasero","description":"Arrows is an animated custom view to give feedback about your UI sliding panels.","archived":false,"fork":false,"pushed_at":"2018-10-15T13:30:25.000Z","size":2233,"stargazers_count":335,"open_issues_count":2,"forks_count":21,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-09T18:18:18.349Z","etag":null,"topics":["animations","arrow","bezier-path","core-graphics","indicator","panels","sliding-menu","ux"],"latest_commit_sha":null,"homepage":"","language":"Swift","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/antoniocasero.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-09-29T06:23:37.000Z","updated_at":"2024-05-17T19:08:53.000Z","dependencies_parsed_at":"2022-08-21T02:20:36.865Z","dependency_job_id":null,"html_url":"https://github.com/antoniocasero/Arrows","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/antoniocasero%2FArrows","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antoniocasero%2FArrows/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antoniocasero%2FArrows/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/antoniocasero%2FArrows/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/antoniocasero","download_url":"https://codeload.github.com/antoniocasero/Arrows/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248085326,"owners_count":21045139,"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":["animations","arrow","bezier-path","core-graphics","indicator","panels","sliding-menu","ux"],"created_at":"2024-11-13T05:11:14.785Z","updated_at":"2025-04-09T18:18:22.386Z","avatar_url":"https://github.com/antoniocasero.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg width=\"420\" src=\"Resources/ArrowsLogo.png\"/\u003e\n\u003c/p\u003e\n\n[![Carthage compatible](https://img.shields.io/badge/Carthage-Compatible-brightgreen.svg?style=flat)](https://github.com/Carthage/Carthage)\n[![CocoaPods](https://img.shields.io/badge/pod-v1.0.0-blue.svg)](https://github.com/antoniocasero/Panels)\n[![Platform](http://img.shields.io/badge/platform-ios-blue.svg?style=flat)](https://developer.apple.com/iphone/index.action)\n[![Language](http://img.shields.io/badge/language-swift-brightgreen.svg?style=flat)](https://developer.apple.com/swift)\n\n[![Twitter](https://img.shields.io/badge/twitter-@acaserop-blue.svg?style=flat)](http://twitter.com/acaserop)\n\nArrows is an animated custom view to represent three different arrow states: `up/down/middle`\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"Resources/arrowExample2.gif\" width=\"480\" height=\"240\" alt=\"Arrowa demo1\"\u003e\n\u003c/p\u003e\n\n\n## Usage\n\nJust need to set `ArrowView` in the class you want to be painted with the arrow indicator in IB.\nOr directly instantiate the class `ArrowView` in code. It is based on UIBezierPath, so the dimensions are defined by the view frame, don't worry about the resolution it will look perfect.\n\nIn your ViewController, you can change the state of the arrow using `update` function\n\n```swift\nclass YourViewController: UIViewController {\n    @IBOutlet weak var arrow: ArrowPanel!\n\n    override func viewDidLoad() {\n        super.viewDidLoad()\n        // .up, .down, .middle\n        arrow.update(to: .middle, animated: true)\n    }\n}\n```\n\nYou can find more options in `ArrowView`\n```swift\n    ///  Get the current position\n    fileprivate(set) var arrowPosition: Position = .middle\n\n    /// Animation duration between arrow states (accessible from IB)\n    @IBInspectable open var arrowAnimationDuration: Double = 0.30\n\n    /// Set arrow color (accessible from IB)\n    @IBInspectable open var arrowColor: UIColor = .black\n```\n\nThe perfect companion for `Arrows` is [Panels](https://github.com/antoniocasero/Panels), check it out! ✨\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"Resources/ArrowExample.gif\" width=\"237\" height=\"471\" alt=\"Arrowa demo1\"\u003e\n\u003c/p\u003e\n\n\n## Installation\n\n### CocoaPods\nAdd the line `pod \"Arrows\"` to your `Podfile`\n\n### Carthage\nAdd the line `github \"antoniocasero/Arrows\"` to your `Cartfile`\n\n## Author\nProject created by Antonio Casero ([@acaserop](https://twitter.com/acaserop) on Twitter).\n\n### Credits\n\n[UI Sketch](https://www.sketchappsources.com/free-source/3599-vpn-app-design-sketch-freebie-resource.html)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantoniocasero%2Farrows","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fantoniocasero%2Farrows","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fantoniocasero%2Farrows/lists"}