{"id":17540008,"url":"https://github.com/benchr267/touchpresenter","last_synced_at":"2025-04-23T22:27:16.050Z","repository":{"id":56924420,"uuid":"63539753","full_name":"BenchR267/TouchPresenter","owner":"BenchR267","description":"Highlights every touch with a given view to create better video presentations of your app.","archived":false,"fork":false,"pushed_at":"2017-08-21T11:33:36.000Z","size":1328,"stargazers_count":18,"open_issues_count":0,"forks_count":3,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-04-20T14:51:31.466Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","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/BenchR267.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":"2016-07-17T15:48:57.000Z","updated_at":"2018-06-22T01:37:27.000Z","dependencies_parsed_at":"2022-08-21T05:20:30.457Z","dependency_job_id":null,"html_url":"https://github.com/BenchR267/TouchPresenter","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BenchR267%2FTouchPresenter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BenchR267%2FTouchPresenter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BenchR267%2FTouchPresenter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BenchR267%2FTouchPresenter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BenchR267","download_url":"https://codeload.github.com/BenchR267/TouchPresenter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250525462,"owners_count":21445067,"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":"2024-10-20T22:07:24.081Z","updated_at":"2025-04-23T22:27:16.034Z","avatar_url":"https://github.com/BenchR267.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TouchPresenter\n\n[![Build Status](https://travis-ci.org/BenchR267/TouchPresenter.svg?branch=master)](https://travis-ci.org/BenchR267/TouchPresenter)\n[![Swift Version](https://img.shields.io/badge/Swift-3.1-orange.svg)]()\n[![Swift Version](https://img.shields.io/badge/Swift-3.2-orange.svg)]()\n[![Swift Version](https://img.shields.io/badge/Swift-4.0-orange.svg)]()\n[![Version](https://img.shields.io/cocoapods/v/TouchPresenter.svg?style=flat)](http://cocoapods.org/pods/TouchPresenter)\n[![License](https://img.shields.io/cocoapods/l/TouchPresenter.svg?style=flat)](http://cocoapods.org/pods/TouchPresenter)\n[![Platform](https://img.shields.io/cocoapods/p/TouchPresenter.svg?style=flat)](http://cocoapods.org/pods/TouchPresenter)\n\n## What does it do?\nThis framework provides an UIWindow subclass that highlights every touch. It can be used to create better video presentations of your app.\n\nThe idea of this project is heavily inspired by https://github.com/eumlab/EUMTouchPointView\n\n## Example\n\nTo run the example project, clone the repo and open the workspace in the Example directory.\n![](https://github.com/BenchR267/TouchPresenter/blob/master/pic/1.gif) ![](https://github.com/BenchR267/TouchPresenter/blob/master/pic/2.gif)\n\n## Requirements\n\n## Installation\n\nTouchPresenter is available through [CocoaPods](http://cocoapods.org). To install\nit, simply add the following line to your Podfile:\n\n```ruby\npod 'TouchPresenter'\n```\n\nTouchPresenter is also available via Carthage. Just add this line to your Cartfile (more information [here](https://github.com/Carthage/Carthage)):\n```\ngithub \"BenchR267/TouchPresenter\" == 2.1.0\n```\n\n## Usage\n\nIn the project, you need to import the framework:\n```Swift\nimport TouchPresenter\n```\n\nTo use the window, just override the init method in your AppDelegate.swift and configure it like you want:\n\n```Swift\noverride init() {\n        let config = TouchPresenterConfiguration(viewType: TPLightBlueCircleIndicator.self, enable3DTouch: true)\n        window = TPWindow(frame: UIScreen.mainScreen().bounds, configuration: config)\n        super.init()\n    }\n```\n\nIf you are already using a custom window be sure to make it a subclass of TPWindow and call it's initializer as super in your initializer:\n\n```Swift\nclass MyCustomWindow: TPWindow { ... }\n```\n\nIt is also possible to use different indicators, there are three kinds provided currently by the framework which is TPLightBlueCircleIndicator, TPRedIndicator and TPCircleIndicator. If you want to use a custom one, just return the type of your custom view, the only requirement is, that it inherits from UIView. (See example project for an example of this)\n\nYou can also specify a configuration block in the configuration object. That will be called after initialising the view, so you could just use a plain UIImageView like in the example project:\n\n```Swift\nlet config = TouchPresenterConfiguration(viewType: UIImageView.self, enable3DTouch: true) {\n    $0.image = UIImage(named: \"oval\")\n}\nwindow = TPWindow(frame: UIScreen.mainScreen().bounds, configuration: config)\n```\n\n## Features\n\n- [x] all touches are highlighted (even multiple ones)\n- [x] simple indicators are provided\n- [x] Enable 3D touch visualization\n- [ ] possibility to turn the functionality off temporary\n- [x] add configuration parameter/closure for view\n- [ ] add unit tests\n- [ ] add travisCI\n\n## Author\n\nBenjamin Herzog, mail@benchr.de\n\n## License\n\nTouchPresenter is available under the MIT license. See the LICENSE file for more info.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbenchr267%2Ftouchpresenter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbenchr267%2Ftouchpresenter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbenchr267%2Ftouchpresenter/lists"}