use streaming interface
compile template into library module packages collection