jekyll-twitter-plugin 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 80e8d5cf8433bd544dd046d6305444676e9d07b5
4
- data.tar.gz: 93421fcb83701f3960321ff34434116a5e381912
3
+ metadata.gz: da29e624fad543de4ea74ed5a5d44dd868ae9468
4
+ data.tar.gz: 6d01a8bdf2f03668f4848835cbda7e5f0edca03a
5
5
  SHA512:
6
- metadata.gz: bf621b7035e5ad7da48b95130a9a0a61652c72dc216720b5251ae5df9ca605a8552125d162270728e5968ac790b2f3fca804be30b8b0324801967bb1b729be31
7
- data.tar.gz: 46427dceea766f3bc1ccf28c5bae0e3e4507fac56c0b687c860986dbf3602d12f262dc55d792d4289b2b7c9daa6c687c07206f3d607eba0c93d3be7508fada69
6
+ metadata.gz: 4e5545d32edf1ea675d569baff3907801619f8df5f9348a9f82a7c12097594ab94226cd70954a1eeda6da8c17ff1790cb05b15db8a8f81bad836b3c3968738b8
7
+ data.tar.gz: 56e1fede9de06facbe5cd41340448a5a316376979903afc1c75fa65a7aed2e94eb119732eb5c3413b54ecc6672c41ee52f29e1f014eda3725fad3bd5ef21de95
data/README.md CHANGED
@@ -4,26 +4,28 @@ A Liquid tag plugin for Jekyll that renders Tweets from Twitter API.
4
4
 
5
5
  [![Gem Version](https://badge.fury.io/rb/jekyll-twitter-plugin.svg)](http://badge.fury.io/rb/jekyll-twitter-plugin)
6
6
 
7
+
7
8
  ### Description
8
9
 
9
- A Liquid tag plugin for [Jekyll](http://jekyllrb.com/) that renders Tweets from Twitter API.
10
+ A Liquid tag plugin for [Jekyll](http://jekyllrb.com/) that enables Twitter content to be used in any content served by Jekyll, content is fetched from the [Twitter API](https://dev.twitter.com/home).
10
11
 
11
- It is based on the original Jekyll Tweet Tag from [scottwb](https://github.com/scottwb/jekyll-tweet-tag) which has not been updated since Twitter updated their API to require Oauth.
12
+ It is based on the original Jekyll Tweet Tag from [scottwb](https://github.com/scottwb/jekyll-tweet-tag) which has not been updated since Twitter updated their API to require Oauth. This version uses the excellent [Twitter gem](https://github.com/sferik/twitter) to make requests and handle authentication.
12
13
 
13
- This plugin replaces the broken plugin mentioned above and uses a different tag and API just in case the original gets fixed and to be more flexible.
14
+ This plugin replaces the broken plugin mentioned above and uses a different tag name and API - this is by design so that the two plugins can be used, if the original gets fixed.
14
15
 
15
16
 
16
17
  ### Features
17
18
 
18
- The plugin supports the following features from the Twitter API:
19
+ The plugin supports the following features:
19
20
 
20
- * Oembed - Embed a Tweet in familiar Twitter styling.
21
- * Caching - API requests can be cached to avoid hitting request limits.
21
+ * Installed via Rubygems
22
+ * [Oembed](#oembed) - Embed a Tweet in familiar Twitter styling.
23
+ * [Caching](#caching) - Twitter API responses can be cached to avoid hitting request limits.
22
24
 
23
25
 
24
26
  ### Requirements
25
27
 
26
- * You have set up a Twitter application and have auth credentials.
28
+ * Twitter oauth credentials - Most Twitter api functions now require authentication. Set up your [application](https://dev.twitter.com/apps/new) and get the credentials.
27
29
 
28
30
 
29
31
  ### Usage
@@ -32,47 +34,78 @@ As mentioned by [Jekyll's documentation](http://jekyllrb.com/docs/plugins/#insta
32
34
 
33
35
  #### Require gem
34
36
 
37
+ Install the gem, add it to your Gemfile;
38
+
39
+ ```ruby
40
+ gem 'jekyll-twitter-plugin'
41
+ ```
42
+
35
43
  Add the `jekyll-twitter-plugin` to your site `_config.yml` file for Jekyll to import the plugin as a gem.
36
44
 
37
45
  ```ruby
38
- gems: [jekyll-twitter-plugin]
46
+ gems: ['jekyll-twitter-plugin']
39
47
  ```
40
48
 
41
49
  #### Manual import
42
50
 
43
51
  Just download the source file into your `_plugins` directory, e.g.
44
52
 
45
- TODO
53
+ ```bash
54
+ # Create the _plugins dir if needed and download project_version_tag plugin
55
+ $ mkdir -p _plugins && cd _plugins
56
+ $ wget https://raw.githubusercontent.com/rob-murray/jekyll-twitter-plugin/master/lib/jekyll-twitter-plugin.rb
57
+ ```
58
+
59
+ #### Credentials
60
+
61
+ Your Twitter application authentication credentials are private - do not distribute these! As such this plugin requires your credentials as Environment variables, it requires the following keys to be set;
62
+
63
+ * **TWITTER_CONSUMER_KEY**
64
+ * **TWITTER_CONSUMER_SECRET**
65
+ * **TWITTER_ACCESS_TOKEN**
66
+ * **TWITTER_ACCESS_TOKEN_SECRET**
67
+
68
+ ```bash
69
+ $ export TWITTER_CONSUMER_KEY=foo etc.
70
+ ```
46
71
 
47
72
  #### Plugin tag usage
48
73
 
49
74
  To use the plugin, in your source content use the tag `twitter` and then pass additional parameters to the plugin.
50
75
 
51
76
  ```ruby
52
- {% twitter type params %}
77
+ {% plugin_type api_type params %}
53
78
  ```
54
79
 
55
- ##### type
80
+ * `plugin_type` - Either `twitter` or `twitternocache`.
81
+ * `api_type` - The Twitter API to use, check below for supported APIs.
82
+ * `params` - Parameters for the API separated by spaces.
56
83
 
57
- This is the type of Twitter API
84
+ ### Supported Twitter APIs
85
+
86
+ The following Twitter APIs are supported.
58
87
 
59
88
  #### Oembed
60
89
 
61
- {% twitter oembed url %}
90
+ The [oembed](https://dev.twitter.com/rest/reference/get/statuses/oembed) API returns html snippet to embed in your app, this will be rendered in the familiar Twitter style.
62
91
 
63
- ##### Output
92
+ ```ruby
93
+ {% twitter oembed status_url %}
94
+ # Example
95
+ {% twitter oembed https://twitter.com/rubygems/status/518821243320287232 %}
96
+ ```
97
+
98
+ ### Output
64
99
 
65
100
  As with the original plugin, all content will be rendered inside a div with the classes 'embed' and 'twitter'
66
101
 
67
- ```
102
+ ```html
68
103
  <div class='embed twitter'>
69
- content
104
+ -- content --
70
105
  </div>
71
106
  ```
72
107
 
73
- #### Output
74
-
75
- If the request cannot be processed then a basic error message will be displayed;
108
+ If something goes wrong then a basic error message will be displayed;
76
109
 
77
110
  > Tweet could not be processed
78
111
 
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = 'jekyll-twitter-plugin'
7
- spec.version = '1.0.0'
7
+ spec.version = '1.0.1'
8
8
  spec.authors = ['Rob Murray']
9
9
  spec.email = ['robmurray17@gmail.com']
10
10
  spec.summary = 'A Liquid tag plugin for Jekyll that renders Tweets from Twitter API'
@@ -91,9 +91,9 @@ module TwitterJekyll
91
91
  end
92
92
 
93
93
  class UnknownTypeClient
94
- def fetch; end
94
+ include TwitterJekyll::Cacheable
95
95
 
96
- def cache_key; end
96
+ def fetch; end
97
97
  end
98
98
 
99
99
  class TwitterTag < Liquid::Tag
@@ -151,10 +151,10 @@ module TwitterJekyll
151
151
 
152
152
  def create_twitter_rest_client
153
153
  @twitter_client = Twitter::REST::Client.new do |config|
154
- config.consumer_key = ENV.fetch('twitter_consumer_key')
155
- config.consumer_secret = ENV.fetch('twitter_consumer_secret')
156
- config.access_token = ENV.fetch('twitter_access_token')
157
- config.access_token_secret = ENV.fetch('twitter_access_token_secret')
154
+ config.consumer_key = ENV.fetch('TWITTER_CONSUMER_KEY')
155
+ config.consumer_secret = ENV.fetch('TWITTER_CONSUMER_SECRET')
156
+ config.access_token = ENV.fetch('TWITTER_ACCESS_TOKEN')
157
+ config.access_token_secret = ENV.fetch('TWITTER_ACCESS_TOKEN_SECRET')
158
158
  end
159
159
  end
160
160
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jekyll-twitter-plugin
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rob Murray