self-host d3