code: function(args) {
  
                  var tpl = '<filter><feFlood flood-color="${color}" flood-opacity="${opacity}" result="colored"/><feMorphology in="SourceAlpha" result="morphedOuter" operator="dilate" radius="${outerRadius}" /><feMorphology in="SourceAlpha" result="morphedInner" operator="dilate" radius="${innerRadius}" /><feComposite result="morphedOuterColored" in="colored" in2="morphedOuter" operator="in"/><feComposite operator="xor" in="morphedOuterColored" in2="morphedInner" result="outline"/><feMerge><feMergeNode in="outline"/><feMergeNode in="SourceGraphic"/></feMerge></filter>';
  
                  var margin = Number.isFinite(args.margin) ? args.margin : 2;
                  var width = Number.isFinite(args.width) ? args.width : 1;
  
                  return joint.util.template(tpl)({
                      color: args.color || 'blue',
                      opacity: Number.isFinite(args.opacity) ? args.opacity : 1,
                      outerRadius: margin + width,
                      innerRadius: margin
                  });
              }
docs: `color` ... outline color ('blue') `width`... outline width (1) `opacity` ... outline opacity (1) `margin` ... gap between outline and the element (2)