Home
Work
Blog
Resources
Contact
About
Blog

jTweetsAnywhere V1.3.1 released – Important bugfix release

By tb, 12:34 pm in Uncategorized  |  0 Comments

jTweetsAnywhere V1.3.1 is released.

Fixed an issue with tweets loaded in auto-refreshing mode might have wrong tweet-id.

Effects of this misbehavior will result in showing wrong/empty tweets in the retweet, reply to and favorite web intent popup.

Thanks to Aaron Markie for digging that up!

jTweetsAnywhere is officially available on Github now

By tb, 11:21 pm in Javascript  |  Tagged , , , ,  |  0 Comments

Here’s the link to the jTweetsAnywhere github repo: jTweetsAnywhere on Github

It’s the preferred place to submit and discuss feature requests, bugs and issues. Thanks to lazymanc (Phil Moorhouse) who started the list.

jTweetsAnywhere V1.3.0 released – Now supporting I18N and Twitter’s Web Intent Actions to Reply to, Retweet and Favorite tweets

By tb, 9:55 am in Javascript  |  Tagged , , , ,  |  1 Comment

jTweetsAnywhere V1.3.0 is released.

Changelog

Here is the complete list of new features and changes for this release.

  • Feature: Added support for I18N (’en’ and ‘de’ resources supplied).
  • Feature: Added support for Twitter’s Web Intents (Reply, Retweet, Favorite tweets).
  • Feature: Added support for users’ favorite tweets.
  • Feature: Added configuration option locale.
  • Feature: Added configuration option showTweetFeed.autoConformToTwitterStyleguide (Sets options to confirm to Twitter’s styleguide regulations).
  • Feature: Added configuration option showTweetFeed.showTwitterBird (Show/hide Twitter bird icon beneath the timestamp of a tweet, linking to the tweeter’s MiniProfile Web Intent).
  • Feature: Added configuration option showTweetFeed.showActionReply (Show tweet’s ‘Reply’ action: supplies a link to popup the tweet’s Reply Web Intent).
  • Feature: Added configuration option showTweetFeed.showActionRetweet (Show tweet’s ‘Retweet’ action: supplies a link to popup the tweet’s Retweet Web Intent).
  • Feature: Added configuration option showTweetFeed.showActionFavorite (Show tweet’s ‘Favorite’ action (supplies a link to popup the tweet’s Favorite Web Intent).
  • Feature: Added configuration option tweetDataProvider.
  • Feature: Added configuration option rateLimitDataProvider.
  • Feature: Added configuration option tweetTwitterBirdDecorator.
  • Feature: Added configuration option tweetActionsDecorator.
  • Feature: Added configuration option tweetActionReplyDecorator.
  • Feature: Added configuration option tweetActionRetweetDecorator.
  • Feature: Added configuration option tweetActionFavoriteDecorator.
  • Bugfix: Fixed an issue with showing duplicate tweets in the feed while using the autorefresh: { mode: 'trigger-insert' } feature. Thanks to Adam Southorn!
  • Bugfix: Fixed an issue to prevent interference with the standard widgets.js file for the Tweet button. Thanks to Brad Beebe!
  • Bugfix: Fixed an issue with handling auto linking of @username and email addresses. Thanks to Brad Beebe!
  • Bugfix: The retweeter’s screen name was not displayed correctly.
  • Test: 100+ Unit tests added, based on QUnit (Javascript Unit Testing Framework).

For additional information take a look at the documentation. Each new feature described there is tagged with
“Since: 1.3.0″.

Finally …

I hope you like the new features. Any feedback would be appreciated, so give it a try and let me know. Thanks.

jTweetsAnywhere V1.2.1 released – Now supporting Twitter’s change to string representations of tweet IDs (Snowflake)

By tb, 10:15 pm in Javascript  |  Tagged , , , ,  |  Comments Off

jTweetsAnywhere V1.2.1 is released.

Due to the fact that Twitter will switch to their new tweet ID generator (called Snowflake) using 64bit unsigned integers on 26th November 2010, here is a new release of jTweetsAnywhere that will support this change.

You should definitely update to V1.2.1 before 26th November 2010.

Please find more detailed information from Twitter here.

jTweetsAnywhere V1.2.0 released – Now with support for building auto-refreshing realtime tickers and pageable tweet feeds

By tb, 10:18 pm in Javascript  |  Tagged , , , ,  |  1 Comment

jTweetsAnywhere V1.2.0 is released.

In this release you will find a lot new features and also big changes under the hood. Let me summarize the main building blocks of the new release.

Support for auto-refreshing tweet feeds and the ability to access earlier tweets by several paging variants

Two of the most requested features from the jTweetsAnywhere users were the support for auto-refreshing tweet feeds – to be able to build realtime or live tickers and the ability to access earlier tweets by several paging variants. Both requests are fullfilled and can easily be adjusted by the configuration options.

Auto-refreching, pageable tweet feed

Let’s look at an example. This script is used in the demo Auto-refreshing Realtime Ticker and More Tweets to populate the placeholder.

$('#jTweetsAnywhereSample').jTweetsAnywhere({
    searchParams: ['q=html5'],
    count: 10,
    showTweetFeed: {
        autorefresh: {
            mode: 'trigger-insert',
            interval: 30
        },
        paging: {
            mode: 'more'
        };
        showTimestamp: {
            refreshInterval: 15
        }
    };
});

The parameters searchParams and count should be well-known: They select what tweets and how many of them should be presented. More interesting is what comes next.

The autorefresh configuration option specifies that jTweetsAnywhere should look for new tweets every 30 seconds. If there are new tweets, a button (trigger control) will be presented at the top of the tweet feed that shows the number of new tweets available (similar to Twitter). This behaviour is configured by the mode: 'trigger-insert' parameter. As an alternative you can set the mode to 'auto-insert' if you want the new tweets to be inserted on top of the tweet feed automatically without user interaction.

The paging configuration option specifies that earlier tweets should be accessible by a click on the ‘more’ button at the end of the tweet feed. Each click adds 10 earlier tweets to the feed. Other paging modes are 'prev-next' which offers flipping through the pages of tweets back and forth (see a demo here) and 'endless-scroll' where earlier tweets will be loaded automatically when reaching the bottom of the feed (see a demo here).

Finally the showTimestamp configuration option makes sure that all visible tweet timestamps in the widget are updated at an interval of 15 seconds. This is desireable for tweet timestamps like ‘17 seconds ago’ which would’t be true after a while.

This is important:

Please always keep in mind, that the use of the Twitter API is rate limited. Non-authenticated users are rated IP-based and you have only 150 calls per hour available. Every retrieval of tweets counts and so does for example hovering over a profile image to show the hovercard. jTweetsAnywhere will always check the remaining count of free API calls before actually calling Twitter to avoid black listing your visitor’s IP.

However – choose your settings wisely to keep your visitors happy. A refresh interval of 30 seconds on a tweet feed that is updated averaged once per hour does not make sense and is a total waste of remaining API calls!

The benefits of caching tweets

Caching is always good, isn’t it? Well … yes … of course.

Berfore Version 1.2.0 jTweetsAnywhere requested the number of tweets from the Twitter API that you configured through the count parameter. Some of you then realized that less than count tweets were delivered by Twitter. The reasons for that behaviour might have been deleted tweets that were just flagged ‘deleted’ and not yet eliminated from the databases (but filtered out from the response) or native retweets that were skipped by Twitter because the request parameter 'include_rts=true' was missing.

From now on jTweetsAnywhere will always deliver the requested amount of tweets, given that there exist enough tweets. For this reason jTweetsAnywhere will always request the maximum number of tweets for the given type of Twitter API call. For a user’s feed or a user’s list feed the maximum is 20 tweets while for a search request you can get up to 100 tweets per API call from Twitter. The loaded tweets will then be stored in the cache. If more (earlier) tweets are requested by one of the paging variants jTweetsAnywhere will try to fulfill that demand from the cache first. If there aren’t enough tweets available, additional tweets are loaded and cached. Thereby the amount of API calls is minimized and Twitter’s rate limit exhaustion will be defered. This is especially important when using the auto-refresh feature.

Before executing any Twitter API call the rate limit is checked and only if there still are possible API calls remaining the request will be sent. This ensures that no calls will be executed if the rate limit is already exhausted and saves your visitors from getting black-listed.

Another benefit is the ability for the user to filter out certain tweets by supplying a customized tweet filter. Each tweet loaded from Twitter will pass the filter and is stored in the cache only if the filter allows it.

By the way, native retweets are supported in V1.2.0 and their presence in the displayed tweet feed can be configured by the includeRetweets option.

New decorators, formatters, visualizers and event handlers

Since the initial release jTweetsAnywhere used the concept of decorators to produce each element’s html markup and supplied a default decorator for each of these elements. Version 1.2.0 adds a few more new decorators to the already existing ones reflecting the new elements, like the tweetUsernameDecorator, tweetGeoLocationDecorator, tweetInReplyToDecorator, tweetRetweeterDecorator, tweetFeedControlsDecorator, tweetFeedControlsMoreBtnDecorator, tweetFeedControlsPrevBtnDecorator, tweetFeedControlsNextBtnDecorator, tweetFeedAutorefreshTriggerDecorator, tweetFeedAutorefreshTriggerContentDecorator and the noDataDecorator.

As a user you had the option to overwrite the default decorators to adjust the resulting markup by your needs. V1.2.0 continues this concept by supplying default formatters, visualizers and event handlers for the various needs.

The formatters, tweetTimestampFormatter and tweetTimestampTooltipFormatter, are currently used only for tweet timestamp formatting purposes and makes the provision of other timestamp formats much easier than the previous way of overwriting the tweetTimestampDecorator.

Visualizers are functions that are responsible for adding one or more elements to the DOM and thereby making them visible to the user. Furthermore a visualizer might also be responsible to do the opposite effect: To remove one or more elements from the DOM. The tweetVisualizer for example gets called each time a tweet element should be appended or prepended to the tweet feed element. For details, see the implementation of the defaultTweetVisualizer. The other visualizers that currently exist are the loadingIndicatorVisualizer and the autorefreshTriggerVisualizer.

An event handler is a function that gets called whenever the event you are interested in, occurs. The onDataRequest event handler will be called immediatly before calling Twitter to retrieve new data and gives you the opportunity to deny the call by returning false from the event handler. This feature might be used in conjunction with the paging feature, especially when using the ‘endless-scroll’ paging mode, to avoid the exhaustion of remaining Twitter API calls, before the rate limit is reached. The stats parameter contains statistical infos and counters that you can examine to base your decision whether to return true or false. The onRateLimitData event handler is called each time jTweetsAnywhere retrieved the rate limit data from Twitter. The actual rate limit data is contained in the stats object.

This is important:

Due to the fact that native retweets are supported now, if you have supplied your own decorators, you might have a look at jTweetsAnywhere’s default decorators to check if your decorators need to be updated to handle these retweets correctly.

Some more configuration options

A view more configuration options have been added to the tweet feed configuration, regarding a tweet’s attributes. These are: showTweetFeed.showTimestamp, showTweetFeed.showProfileImages, showTweetFeed.showUserScreenNames, showTweetFeed.showUserFullNames, showTweetFeed.showGeoLocation and showTweetFeed.showInReplyTo.

Changelog

Here is the complete list of new features and changes for this release.

  • Feature: Support for auto-refreshing tweet feeds to build realtime/live tickers
  • Feature: Support for several paging modes to show more tweets (mode: ‘more’ | ‘prev-next’ | ‘endless-scroll’)
  • Feature: Native retweets support
  • Feature: Tweet filter support
  • Feature: Element visualizer support
  • Feature: Event handler support
  • Feature: Value formatter support
  • Feature: Tweets cache support to minimize rate-limited Twitter API calls
  • Feature: Taking care of Twitter’s rate limit when loading data from Twitter
  • Feature: Added configuration option showTweetFeed.showTimestamp
    (show/hide/auto-refresh a tweet’s timestamp’)
  • Feature: Added configuration option showTweetFeed.showProfileImages
    (show/hide a user’s profile image’)
  • Feature: Added configuration option showTweetFeed.showUserScreenNames
    (show/hide a user’s screen name’)
  • Feature: Added configuration option showTweetFeed.showUserFullNames
    (show/hide a user’s full name
  • Feature: Added configuration option showTweetFeed.showGeoLocation
    (show/hide a tweet’s geolocation attribute)
  • Feature: Added configuration option showTweetFeed.showInReplyTo
    (show/hide a tweet’s in-reply-to attribute)
  • Feature: Added configuration option tweetUsernameDecorator
  • Feature: Added configuration option tweetGeoLocationDecorator
  • Feature: Added configuration option tweetInReplyToDecorator
  • Feature: Added configuration option tweetRetweeterDecorator
  • Feature: Added configuration option tweetFeedControlsDecorator
  • Feature: Added configuration option tweetFeedControlsMoreBtnDecorator
  • Feature: Added configuration option tweetFeedControlsPrevBtnDecorator
  • Feature: Added configuration option tweetFeedControlsNextBtnDecorator
  • Feature: Added configuration option tweetFeedAutorefreshTriggerDecorator
  • Feature: Added configuration option tweetFeedAutorefreshTriggerContentDecorator
  • Feature: Added configuration option noDataDecorator
  • Feature: Added configuration option tweetTimestampFormatter
  • Feature: Added configuration option tweetTimestampTooltipFormatter
  • Feature: Added configuration option tweetVisualizer
  • Feature: Added configuration option loadingIndicatorVisualizer
  • Feature: Added configuration option autorefreshTriggerVisualizer
  • Feature: Added configuration option onDataRequestHandler
  • Feature: Added configuration option onRateLimitDataHandler
  • Cleanup: tweetProfileImagePresent is deprecated now. Use showTweetFeed.showProfileImages instead

For additional information take a look at the documentation. Each new feature described there is tagged with
“Since: 1.2.0″.

Finally …

I hope you like the new features and will find them useful. As always: Any feedback would be appreciated, so give it a try and let me know. Thanks.

jTweetsAnywhere – New release V1.1.0

By tb, 9:26 am in Javascript  |  Tagged , , , ,  |  Comments Off

jTweetsAnywhere V1.1.0 is released.

The following changes and enhancements made it into this release.

  • Feature: Added the tweet’s permalink to it’s timestamp.
  • Feature: Added configuration option showTweetFeed.showSource (show a tweet’s source (”via”) attribute).
  • Feature: Added configuration option showTweetFeed.expandHovercards (initially show hovercards expanded).
  • Feature: Added configuration option tweetAttributesDecorator.
  • Feature: Added configuration option tweetSourceDecorator.
  • Feature: Added configuration option errorDecorator.
  • Cleanup: Removed the generation of the element attributes [width="48" height="48" border="0"] in defaultTweetProfileImageDecorator and defaultLoginInfoContentDecorator. Width and height are now controlled in the jTweetsAnywhere CSS.

For additional information take a look at the documentation. Each new feature described there is tagged with
“Since: 1.1.0″.

jTweetsAnywhere – New release V1.0.1

By tb, 1:23 am in Javascript  |  Tagged , , , ,  |  Comments Off

jTweetsAnywhere V1.0.1 is released.

This release fixes a bug in the presentation of a tweets’s timestamp in any IE Browser version. All users of the initial release V1.0.0 should upgrade to this version.

jTweetsAnywhere – jQuery Twitter Widget with @Anywhere support

By tb, 11:44 pm in Javascript  |  Tagged , , , ,  |  18 Comments

Intro

jTweetsAnywhere is a jQuery Twitter Widget with @Anywhere support that simplifies the integration of Twitter services into any website.

With just a few lines of Javascript you can display tweets from users’ feeds and users’ lists, show results from a Twitter search, integrate a customizable TweetBox, let your visitors follow you directly from your site and handle secure authentication with Twitter.

More features

  • Displays tweets from one or more user’s feeds
  • Displays tweets from a user’s list
  • Displays the results of a Twitter search
  • Supports all Twitter search params
  • Supports Twitter’s @Anywhere features
  • Optionally displays profile images in TweetFeeds
  • Automatically detects and marks up links in tweets
  • Automatically links #hashtags to Twitter search requests
  • Automatically links @username to Twitter profiles
  • Automatically shows Hovercards when hovering @username or profile images
  • Integrates a customizable TweetBox, so your visitors can update their status on the fly
  • Adds a Twitter “Follow Button” to your site
  • Adds a “Connect with Twitter” button to your site
  • Provides secure user authentication
  • Handles low level user login and signup procedures
  • Customize the style and layout of the widget with your own stylesheets
  • Overwrite the generated HTML markup by providing your own Decorators
  • Small code size for fast download
  • Does not interrupt the loading of your page

Sample

Let’s start with a simple example on how to embed the widget into your site. We want to show 20 recent tweets from around Paris, France.

First, we have to include the necessary Javascripts. In our head section we add jQuery 1.4.2 and the jTweetsAnywhere plugin.

<head>
	<link rel="stylesheet" type="text/css" media="screen" href="jquery.jtweetsanywhere-1.0.0.css" />

	<script type="text/javascript" src="jquery-1.4.2.min.js"></script>
	<script type="text/javascript" src="jquery.jtweetsanywhere-1.0.0.min.js"></script>
</head>

Next, we add a placeholder (in this case the <div> element with the id ‘tweetsFromParis’) in the HTML page. The placeholder will then be populated by jTweetsAnywhere.

<body>
	<p>Some tweets from around Paris, France ...</p>

	<div id="tweetsFromParis">
	</div>
	...
</body>

Finally, we integrate the plugin’s Javascript.

$(document).ready(function(){
  $('#tweetsFromParis').jTweetsAnywhere({
    searchParams: ['geocode=48.856667,2.350833,30km'],
    count: 20
  });
});

The result will look like this.

20 recent tweets from around Paris, France

Demo

Addional samples that show Twitter’s @Anywhere support und the usage of your own decorators can be found on the jTweetsAnywhere Demo Page.

Download

You can download jTweetsAnywhere from the widget’s home page.

Documentation

You can find the complete documentation of all configuration options on the widget’s home page.

Outro

Any feedback would be appreciated, so give it a try and let me know. Thanks.

20+ Hi-Res Bokeh Textures

By tb, 9:41 am in Design Resources  |  Tagged ,  |  4 Comments

Today you’ll get some high resolution Bokeh textures. I’ve taken the pictures a few days ago during my stay at the Musikmesse in Frankfurt.

You can click on the preview images below to download the hi-res image or grab them all in a single zip archive at the end of the post. Hope you enjoy them.

Preview

Texture 1

Texture 2

Texture 3

Texture 4

Texture 5

Texture 6

Texture 7

Texture 8

Texture 9

Texture 10

Texture 11

Texture 12

Texture 13

Texture 14

Texture 15

Texture 16

Texture 17

Texture 18

Texture 19

Texture 20

Texture 21

All textures are free for personal and commercial use. If you like, you can drop me a note, when using the textures in your designs.

Download

12 Great Brushes Resource Sites

By tb, 9:10 am in Design Resources  |  Tagged ,  |  1 Comment

As a Photoshop designer, you always need high quality brushes for your work. Here is the list of my top 12 brushes resource sites to help you find the best Photoshop brushes around.

Brush King

Brush King
Free Photoshop Brushes
 

Brusheezy

Brusheezy
Stupid Name. Cool Brushes!
 

QBrushes

QBrushes
Quality Brushes for Photoshop
 

FBrushes

FBrushes
Free Photoshop Brushes
 

iDesign Brushes

iDesign Brushes
iDesign Brushes is your number one source for all of your brush needs. We hand pick only the best Brushes from our submissions to ensure quality. We update daily so be sure to check back often.
 

PSBrushes

PSBrushes
Photoshop Brushes
 

Photoshop Free Brushes

Photoshop Free Brushes
Welcome to Photoshop Free Brushes – a collection of high quality free Photoshop brushes.
 

free brushes

free brushes
Your #1 Source for Free Photoshop, GIMP & Paint Shop Pro Brushes
 

Free Photoshop Brushes

Free Photoshop Brushes
Where everything is a brush
 

Get Brushes

Get Brushes
If only Van Gogh had these brushes …
 

Wow Brushes

Wow Brushes
Free Photoshop Brushes
 

123 Free Brushes

123 Free Brushes
123Freebrushes.com is a growing free stock brush site. Right now over 1200 freebrushes sorted by categories are assembled together for download.
 

If you need more resources like patterns, vectors, textures or stock images for your designs, check my resources section.

Older Posts »