A WildDuck+MailJet Mail Transport Service for tink_web
The service interface pretty much looks like this:
interface Api {
	@:post('/send')
	@:params(configData = header['data'])
	function send(configData:String, body:IdealSource):{result:String};
  @:ws('/dropoff') // pseudo meta
  function dropoff():OutgoingResponse;
}dropoff is a websocket endpoint. Once you've sent an email, you send the attachments separately through binary on the websocket (encoded with tink_serialize)
To simplify this, a why_email client is included. (duck_jet.Client).