We use GitHub Enterprise at work for almost all of our activities at work. In addition to maintaing source in git, we also use GitHub for code reviews, issue tracking, milestones, incident reports etc. However, what we lack most are (a) an ability to quickly track project progress, and (b) someway to track large features that can take one or more milestones to complete – like Launchpad‘s Blueprints. Here is how Launchpad describes a blueprint.
Blueprint is a lightweight way to manage releases of your software and to track the progress of features and ideas, from initial concept to implementation.
Enter Milestone.js – the idea of Milestone.js is to fill these gaps. It grew out of our needs at work.
First, it uses GitHub APIs and Timeline JS to map milestones on a timeline so that you can find what is happening in any given milestone.>
Second, it follows some simple conventions to manage blueprints:
- Create each blueprint as an issue, and label it as a “blueprint” – it does not matter what you label it as.
- Create issues for all work items for each blueprint.
- For each blueprint, add the work items as comments starting with
Milestone.js will then show all related work items for each blueprint. Here is an example.