rewrite timeline
fix bugs
Merge branch 'feature/timeline' into develop