Edit in JSFiddle

const ENDPOINT = 'https://api.github.com/orgs/codecasts/repos';

new Vue({
  el: '#app',
  data: {
    repos: [],
    configs: {
      orderBy: 'stargazers_count',
      order: 'desc',
      filter: ''
    }
  },
  mounted() {
    axios
      .get(ENDPOINT)
      .then(response => response.data)
      .then(data => Vue.set(this, 'repos', data));
  },
  computed: {
    list() {
      const filter = this.configs.filter;
      const list = _.orderBy(this.repos, this.configs.orderBy, this.configs.order);

      if (_.isEmpty(filter)) {
        return list;
      }

      return _.filter(list, repo => repo.name.indexOf(filter) >= 0);
    }
  },
});
<div class="container" id="app">

  <header class="page-header">
    <h1>Codecasts Repos</h1>
  </header>

  <form class="form-inline">
    <div class="form-group">
      <label>Ordernar por:</label>
      <select class="form-control" v-model="configs.orderBy">
        <option value="name">Nome</option>
        <option value="stargazers_count">Estrelas</option>
      </select>
    </div>

    <div class="form-group">
      <label>Orderm:</label>
      <select class="form-control" v-model="configs.order">
        <option value="asc">Crescente</option>
        <option value="desc">Decrescente</option>
      </select>
    </div>

    <div class="form-group">
      <label>Filtrar</label>
      <input type="text" class="form-control" placeholder="Filtrar repo por nome" v-model="configs.filter">
    </div>
  </form>

  <hr>

  <ul class="list-group">
    <li v-for="repo in list" class="list-group-item" :title="repo.description">
      <span class="badge"> {{ repo.stargazers_count }} <i class="fa fa-star-o"></i></span>
      <a :href="repo.url">
        {{ repo.name }} 
      </a>
    </li>
  </ul>

</div>