Simple pipe framework