Better Client-side storage for popup window

Recently I was asked to create a popup window for a website, the requirements were as follows:

  1. A popup box is to show up a few seconds after the page loads.
  2. Users will be able to dismiss the popup box and the box will not show again for the user for 6 hours.
  3. There will be a different popup box for each page (the site has a few hundred pages), and they show and hide independently.

Continue reading Better Client-side storage for popup window

ReactJS Animation done in two ways

This is an old post and react has changed the way it handles animation since

The React way

ReactJS provides a high-level API: ReactCssTransitionGroup to perform CSS3 Transition based animation. By using ReactCSSTransitionGroup, you get a class change when an item is entering, has entered, is leaving, and has left.

Continue reading ReactJS Animation done in two ways

Setting up Gulp for Front End Develoment

Gulp vs Grunt

I recently made the switch from Grunt to Gulp and I’m pretty happy with it. The difference between Gulp and Grunt is in their setting of tasks. People say that Grunt is “configuration over code” and Gulp is “code over configuration”.  In Grunt each task needs to be configured independently, for example:

Continue reading Setting up Gulp for Front End Develoment

Setting up Grunt in Drupal Radix theme

Grunt is a front-end task runner that helps with workflow automation. It works with Sass, Less, CoffeeScript etc.

Grunt logo

Drupal Radix theme comes with Compass configured, and with the right version of Compass and Sass installed, I am able to run compass watch in the theme directory to compile sass. However, if I then need to minify javascript, or run CoffeeScript, or clean drush, I have to set up different configuration. Grunt allows me to do all these tasks in one go.

Here is how to set up grunt in Drupal theme:

Continue reading Setting up Grunt in Drupal Radix theme