It’s Twitter vs the Government in a Battle Over Free Speech

Published on April 7, 2017

As if President Trump’s relationship to tech wasn’t already fraught enough, Twitter announced yesterday that…

Read More
Voter App

Startup Applies Tinder UI/UX to the Democratic Process

Published on December 8, 2015

In a political season where it sometimes feels like everybody and their brother has run…

Read More
// Add original row class to side image sections $('section.side-image').each(function() {var rowClass = $(this).find('.wpb_row').first().attr('class').split('vc_row-fluid').pop().trim();$(this).addClass(rowClass);}); // Highlight portfolio in navigation on project pages $('body.posttype-portfolio').find('#menu-navigation a[href*="/portfolio/"]').parent().addClass('current-menu-item'); // Highlight services in navigation on services pages $('body.parent-pageid-12').find('#menu-navigation a[href*="/app-development-services/"]').parent().addClass('current-menu-item'); // Copy tab titles into content for responsive view $('.wpb_tabs .ui-tabs-anchor').each(function() {$( '.wpb_tab' + $(this).attr('href') ).prepend('
' + $(this).html() + '
');}); /*if (jQuery('.portfolio-page').length > 0){*/ /*portfolio-template-default*/ if (jQuery('.portfolio-template-default').length == 0){ $.fn.extend({ animationend: function(callback) { return this.one('webkitAnimationEnd mozAnimationEnd oAnimationEnd oanimationend animationend', callback); }, initWaypoint: function() { return this.addClass('waypoint') .removeClass('animated') .waypoint2(function(direction) { //console.log(this.element) $(this.element).addClass('animated'); this.destroy(); }, { offset: '80%' }); } }); } if (jQuery('.portfolio-template-default.single-portfolio').length > 0){ setTimeout(function () { jQuery('.page-header h1.waypoint, .page-header p.waypoint').addClass('animated'); }, 1000); } if ( window.matchMedia('(min-width: 481px)').matches ) { var waypoints = null; var $waypoints = $('.waypoint'); var waypointSelectors = { 'common': [ $('section.vc_row').has('.lead').find('h1, h2, .lead, .btn'), '[class*="vc_col-"]:not([class*="-12"])', 'section.side-image .image-container', 'section.text-intro h2', 'section.howwework-preview .wpb_tabs', 'section.publications .col-sm-4', 'section.featured-projects .rev_slider_wrapper', 'section.landing-location-intro .wpb_text_column' ], 'home': [], 'app-development-services': [ 'section.services-slider', 'section.services-specialities' ], 'portfolio': [ '.portfolio-showcase [class^="col-"]' ], 'about': [ $('.team-member') ], 'landing': [ '.posts-container .col-sm-6' ], 'staging': [ '.section-clients-v2 .col-sm-3' ] } var pageSlug = window.location.href.split('/'); if (pageSlug.length > 4) { pageSlug = pageSlug[pageSlug.length - 2]; } else { pageSlug = 'home'; } _.every(waypointSelectors, function(selectors, page) { _.each(selectors, function(selector) { $waypoints = $waypoints.add(selector); }); if (page === 'common' || page === pageSlug) { _.each(selectors, function(selector) { $waypoints = $waypoints.add(selector); }); if (page === pageSlug) return false; } return true; }); waypoints = $waypoints.initWaypoint(); } });})(jQuery);-->