refactoring channel fetch and render
fix #45