<!-- Generator: Adobe Illustrator 19.2.1, SVG Export Plug-In  -->
<svg id="surface" version="1.1"
	 xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:a="http://ns.adobe.com/AdobeSVGViewerExtensions/3.0/" x="0px" y="0px" width="387.4px" height="46.2px" viewBox="0 0 387.4 46.2" enable-background="new 0 0 387.4 46.2"
	 xml:space="preserve">
<defs>
</defs>
<g class="name">
	<g class="letter">
		<path fill="none" stroke="#384B5F" stroke-width="8.1631" stroke-miterlimit="10" d="M32.1,8c0,0-3.4-2.9-11.6-2.9
			S4.1,10.4,4.1,21.6c0,14.6,11.7,18.9,17.9,18.9s9.9-2.4,9.9-2.4"/>
	</g>
	<g class="letter">
		<path fill="none" stroke="#384B5F" stroke-width="8" stroke-miterlimit="10" d="M38.1,36.7c0,0,2.1,4.6,8.3,4.4s8-3.9,8-9.7
			s0-30.9,0-30.9"/>
	</g>
	<g class="letter">
		<path fill="none" stroke="#384B5F" stroke-width="8" stroke-miterlimit="10" d="M119.2,13.6c0,0-3.3-9.1-15.5-9.2
			c-9.6-0.1-17,9-17,18.8s7.7,18,18.2,18c16,0,16.5-16.5,16.5-16.5l-16.5,0.2"/>
	</g>
	<g class="letter">
		<polyline fill="none" stroke="#384B5F" stroke-width="8" stroke-linejoin="bevel" stroke-miterlimit="10" points="133.2,44.2 
			149.6,2.4 166.1,44.1 		"/>
		<line fill="none" stroke="#384B5F" stroke-width="8" stroke-miterlimit="10" x1="138.2" y1="32.4" x2="160.9" y2="32.4"/>
	</g>
	<g class="letter">
		<polyline fill="none" stroke="#384B5F" stroke-width="8" stroke-linejoin="bevel" stroke-miterlimit="10" points="179.2,45.2 
			185.9,1.7 200.7,44.2 215.4,1.7 222.2,45.6 		"/>
	</g>
	<g class="letter">
		<polyline fill="none" stroke="#384B5F" stroke-width="8" stroke-linejoin="bevel" stroke-miterlimit="10" points="237.2,45.2 
			243.9,1.7 258.7,44.2 273.4,1.7 280.2,45.6 		"/>
	</g>
	<g class="letter">
			<ellipse fill="none" stroke="#384B5F" stroke-width="8" stroke-linejoin="bevel" stroke-miterlimit="10" cx="314.1" cy="22.7" rx="18.3" ry="18.7"/>
	</g>
	<g class="letter">
		<polyline fill="none" stroke="#384B5F" stroke-width="8" stroke-linejoin="bevel" stroke-miterlimit="10" points="349.4,45.6 
			349.4,2.6 383.4,43.2 383.4,0.6 		"/>
	</g>
</g>
</svg>


<div class="link">
<a href="https://twitter.com/cjgammon">@cjgammon</a>
</div>
body{
  margin: 0;
  background: #384b5f;
}

.link{
  position: fixed;
  bottom: 0;
  left: 0;
  margin: 10px;
  font-family: sans-serif;
  font-weight: 100;
  
  a{
    color: black;
    text-decoration: none;
    
    &:hover{
      text-decoration: underline;
    }
  }
}

svg{
  position: absolute;
  top: 0;
  left: 0;
}

svg{
  width: 100%;
  height: 100%;
}

.name{
  transform-origin: 50% 50%;
  transform: scale(0.75);
}
View Compiled
let s = new Snap('#surface');
var letterSpeed = 10; //higher = faster
var colorSpeed = 2; //higher = faster
let colors = [
  '#e9edef', '#efad42', '#e9435a', '#4aadad', '#83cead'
];
let letters = s.selectAll('.letter');
let tl = new TimelineMax({
  repeat: -1,
  yoyo: true
});

for (var i = 0; i < letters.length; i += 1) {
  var letter = letters[i];

  tl.set(letter.node, {
    rotation: 180 - (Math.random() * 360),
    x: 20,
    y: -200
  }, 0);

  var tw = TweenMax.to(letter.node, 0.6, {
    rotation: 0,
    x: 0,
    y: 0,
    ease: Back.easeOut
  });

  tl.add(tw, 0.5 + (i / letterSpeed));

  var paths = letter.selectAll('*');
  for (var k = 0; k < paths.length; k += 1) {
    for (var j = 0; j < colors.length; j += 1) {

      var l = paths[k].clone();
      l.attr({
        stroke: colors[j]
      });

      var delay = (0.1 + (i / letterSpeed) + ((colors.length - (j / colorSpeed))) / 10);
      var tw = TweenMax.fromTo(l.node, 1, {
        drawSVG: '0%'
      }, {
        drawSVG: '100%',
        ease: Power2.easeInOut
      });
      tl.add(tw, delay);

    }

    //paths[k].remove();
    letter.prepend(paths[k]);
    TweenMax.set(paths[k].node, {
      x: -3,
      y: -3
    });
    var tw = TweenMax.fromTo(paths[k].node, 1, {
      drawSVG: '0%'
    }, {
      drawSVG: '100%',
      ease: Power2.easeInOut
    });
    tl.add(tw, delay);

  }

}
View Compiled

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. //cdnjs.cloudflare.com/ajax/libs/gsap/1.18.0/TweenMax.min.js
  2. //s3-us-west-2.amazonaws.com/s.cdpn.io/16327/DrawSVGPlugin.js?r=12
  3. //cdnjs.cloudflare.com/ajax/libs/snap.svg/0.3.0/snap.svg-min.js
  4. //cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min.js