AngularJs ng-repeat no puede obtener la fecha del archivo Json

Probé en mi editor con localhost, el resultado funciona bien, pero una vez que cambio como enlace github.io, no funciona. El registro de la consola muestra el error de la siguiente manera:

-OBTENER https://rexvamanhole622.github.io/angular_js_assignment/assignment_3/assignment3-starter-code/founditems.html 404 (No encontrado)

-Error: [$compilar:tpload] http://errors.angularjs.org/1.5.7/$compile/tpload?p0=founditems.html&p1=404&p2=Not%20Found

Fragmento HTML:

<!doctype html>
<html lang="en" ng-app="NarrowItDownApp" >
  <head>
    <title>Narrow Down Your Menu Choice</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <script src="angular.min.js"></script>
    <script src="assignment_3.js"></script>
    <link rel="stylesheet" href="styles/bootstrap.min.css">
    <link rel="stylesheet" href="styles/styles.css">
  </head>
  <body>
    <div class="container" ng-controller='NarrowItDownController as searchController'>
      <h1>Narrow Down Your Chinese Menu Choice</h1>
      <div class="form">
        <div class="form-group">
          <input type="text" ng-model="searchController.searchTerm" placeholder="search term" class="form-control">
        </div>
        <div class="form-group narrow-button">
          <button ng-click="searchController.getMatchedMenuItems();" class="btn btn-primary">Narrow It Down For Me!</button>
        </div>
      </div>
  

      <div ng-if="searchController.found.length == 0" class="emptyMessage">Nothing found.</div>
      <div ng-if="searchController.found.length != 0" class="tableView">
         
                <found-items 
                items="searchController.found" 
                on-remove="searchController.removeItem(index)">
                </found-items>
      </div>
   
    </div>
  
  </body>
  </html>
  

Directiva templateUrl doc:

<table class="table table-striped table-hover dataTable responsive display" width="100%">
  <thead>
  <th>Short Name</th>
  <th>Name</th>
  <th>Description</th>
  <th class="nosort"></th>
  </thead>
  <tbody>
  <tr ng-repeat= "item in items">
  <td>{{item.short_name}}</td>
  <td>{{item.name}}</td>
  <td>{{item.description}}</td>
  <td><button ng-click="onRemove({index: $index});">Don't want this one!</button></td>
  </tr>
  </tbody>
  </table>

y el fragmento JS:

(function() {
  'use strict';

  angular.module('NarrowItDownApp', [])
  .controller('NarrowItDownController', NarrowItDownController)
  .service('MenuSearchService', MenuSearchService)
  .constant('ApiBasePath', "https://davids-restaurant.herokuapp.com")
  .directive('foundItems', FoundItems);

  function FoundItems() {
    var ddo = {
      templateUrl: 'founditems.html',
      scope: {
        items: '<',
        onRemove: '&'
      }
    };

    return ddo;
  }

  NarrowItDownController.$inject = ['MenuSearchService'];
  function NarrowItDownController(MenuSearchService) {
    var menu = this;
    menu.found = [];

    //Implementaion for Filtering Items based on searchTerm
    menu.getMatchedMenuItems = function () {
      menu.found = []
      if (menu.searchTerm) {
        var promise = MenuSearchService.getMatchedMenuItems(menu.searchTerm);
        promise.then(function (response) {
          menu.found = response;
        })
        .catch(function (error) {
          console.log("Something went terribly wrong.");
        });
      }
    };

    // Implementaion for removing item at given index
    menu.removeItem = function (index) {
      menu.found.splice(index, 1);
      if (menu.found.length == 0) {
        menu.error = "Nothing found";
      }
    }
  };


  MenuSearchService.$inject = ['$http', 'ApiBasePath']
  function MenuSearchService($http, ApiBasePath) {
    var service = this;

    service.getMatchedMenuItems = function (searchTerm) {
      return $http({
        method: "GET",
        url: (ApiBasePath + "/menu_items.json"),
      }).then(function (result) {

        // process result and only keep items that match
        var items = result.data.menu_items;
        var foundItems = []
        for (var index = 0; index < items.length; index++) {
          if (items[index].description.indexOf(searchTerm) != -1) {
            foundItems.push(items[index]);
          }
        }

        // return processed items
        return foundItems;
      });
    };

  };

})();
Answer