{"id":16147706,"url":"https://github.com/bakercp/ofxtwitter","last_synced_at":"2025-03-18T18:31:55.955Z","repository":{"id":11738202,"uuid":"14264957","full_name":"bakercp/ofxTwitter","owner":"bakercp","description":"Streaming and REST Twitter Clients supporting API v1.1 for openFrameworks.","archived":false,"fork":false,"pushed_at":"2020-09-17T22:55:02.000Z","size":671,"stargazers_count":16,"open_issues_count":6,"forks_count":6,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-10-11T00:26:46.162Z","etag":null,"topics":["addon","c-plus-plus","json","openframeworks","ssl","streaming","twitter","twitter-api"],"latest_commit_sha":null,"homepage":"","language":"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/bakercp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-11-09T20:59:43.000Z","updated_at":"2023-05-02T14:14:53.000Z","dependencies_parsed_at":"2022-08-20T09:21:21.286Z","dependency_job_id":null,"html_url":"https://github.com/bakercp/ofxTwitter","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/bakercp%2FofxTwitter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bakercp%2FofxTwitter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bakercp%2FofxTwitter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bakercp%2FofxTwitter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bakercp","download_url":"https://codeload.github.com/bakercp/ofxTwitter/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221715737,"owners_count":16868610,"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":["addon","c-plus-plus","json","openframeworks","ssl","streaming","twitter","twitter-api"],"created_at":"2024-10-10T00:27:01.223Z","updated_at":"2024-10-27T18:13:18.942Z","avatar_url":"https://github.com/bakercp.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ofxTwitter\n\n## Description\n\nStreaming and REST Twitter Clients for [openFrameworks](http://openframeworks.cc)\n\n## Features\n\n-   Twitter Streaming API client.\n-   Twitter [Search API](https://dev.twitter.com/rest/public/search) client.\n-   Easily extensible.\n-   Many [API](https://dev.twitter.com/overview/api) features implemented (e.g. Search, Tweet, Media Upload).\n\n## Getting Started\n\nTo get started, generate the example project files using the openFrameworks [Project Generator](http://openframeworks.cc/learning/01_basics/how_to_add_addon_to_project/).\n\n## Documentation\n\nAPI documentation can be found here.\n\n### Twitter Credentials\n\nIn order to use the Twitter API with `ofxTwitter`, you will need a Twitter developer account and a registered Twitter application in order to generate the required credential information. To do this:\n\n1.  Create an account at [twitter.com](https://twitter.com) if do not already have one.\n2.  Create a Twitter application on [apps.twitter.com](http://apps.twitter.com).\n3.  Once you have created an application, choose the \"Keys \u0026 Access Tokens\" tab and make note of the following credential items:\n\n*   Consumer Key (API Key)\n*   Consumer Secret (API Secret)\n*   Access Token\n*   Access Token Secret\n\nThese credentials can be used with `ofxTwitter` programmatically or by loading a JSON file. A template JSON credentials file is provided with each example in `ofxTwitter`: `bin/data/credentials.json`. If you are working with multiple OF apps using the same credential info, you can just copy and reuse the same `credentials.json` file.\n\nNote that the credentials are loaded with this code, usually in the `ofApp::setup()` method:\n\n```c++\n  client.setCredentialsFromFile(\"credentials.json\");\n```\n\nAlternatively you can load credentials programmatically with the following:\n\n```c++\n    ofxHTTP::OAuth10Credentials credentials(\"YOUR_CONSUMER_KEY_HERE\",\n                                            \"YOUR_CONSUMER_SECRET_HERE\",\n                                            \"YOUR_ACCESS_TOKEN_HERE\",\n                                            \"YOUR_ACCESS_TOKEN_SECRET_HERE\");\n    client.setCredentials(credentials)\n```\n\n### Creating a Twitter Application\n\nTo create an application with `ofxTwitter` you need credentials (see above) and (optionally) you need an SSL certificate bundle (See [ofxSSLManager](https://github.com/bakercp/ofxSSLManager/blob/master/README.md) for more info) in your `bin/data` folder. You will likely need to include the following files:\n\n*   `credentials.json`: your Twitter app's consumer \u0026 access token information.\n*   `ssl/cacert.pem`: a collection of trusted root certification authorities, needed for the SSL communication for the Twitter API.\n\n\n### Keep Your Credentials Secret\n\nBe careful not to upload your `credentials.json` file to a public Github repository. If you do, don't worry -- you can easily log on to [apps.twitter.com](http://apps.twitter.com) and revoke your compromised credentials and generate new ones.\n\n## Compatibility\n\n### Branches\n\nThe `stable` branch of this repository is meant to be compatible with the openFrameworks [stable branch](https://github.com/openframeworks/openFrameworks/tree/stable), which corresponds to the latest official openFrameworks release.\n\nThe `master` branch of this repository is meant to be compatible with the openFrameworks [master branch](https://github.com/openframeworks/openFrameworks/tree/master).\n\nSome past openFrameworks releases are supported via [releases](../../releases/), but only the [stable branch](../../tree/stable) and the [master branch](../../tree/master) are actively supported.\n\n### Requirements\n-   [ofxGeo](https://github.com/bakercp/ofxGeo)\n-   [ofxHTTP](https://github.com/bakercp/ofxHTTP)\n    -   [ofxIO](https://github.com/bakercp/ofxIO)\n        -   ofxPoco (included with openFrameworks)\n    -   [ofxMediaType](https://github.com/bakercp/ofxMediaType)\n    -   [ofxSSLManager](https://github.com/bakercp/ofxSSLManager)\n    -   [ofxNetworkUtils](https://github.com/bakercp/ofxNetworkUtils)\n\n## Versioning\n\nThis project uses [Semantic Versioning](http://semver.org/), although strict adherence will only come into effect at version 1.0.0.\n\n## Licensing\n\nSee [LICENSE.md](LICENSE.md).\n\n## Contributing\n\nPull Requests are always welcome, so if you make any improvements please feel free to float them back upstream :)\n\n1.  Fork this repository.\n2.  Create your feature branch (`git checkout -b my-new-feature`).\n3.  Commit your changes (`git commit -am 'Add some feature'`).\n4.  Push to the branch (`git push origin my-new-feature`).\n5.  Create new Pull Request.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbakercp%2Fofxtwitter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbakercp%2Fofxtwitter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbakercp%2Fofxtwitter/lists"}