NuPIC Geospatial Tracking Application server issue

I’m trying to run the NuPIC Geospatial Tracking Application at https://github.com/numenta/nupic.geospatial but when I open http://localhost:5000, I just get a blank page with a checkbox labeled “Auto Follow”. Anyone know what’s going on here?

Keep in mind this codebase is 6 years old.

There should be errors in either the python server terminal output, or in the JavaScript client’s logs. Please check them and paste the error here.

@rhyolight
python server.py
* Restarting with stat
* Debugger is active!
* Debugger PIN: 291-730-709
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
127.0.0.1 - - [07/Apr/2020 16:22:21] “GET / HTTP/1.1” 304 -
127.0.0.1 - - [07/Apr/2020 16:22:21] “GET /css/visualize.css HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:21] “GET /js/external/jquery-1.10.2.min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:22] “GET /css/jQRangeSlider/iThing-min.css HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:22] “GET /js/external/jquery-ui.min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:22] “GET /js/external/fiber.min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:22] “GET /js/external/gmaps.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:22] “GET /js/external/moment.min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:22] “GET /js/external/jQDateRangeSlider-min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:22] “GET /js/external/color.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:22] “GET /js/util/color.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:22] “GET /js/util/map.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:22] “GET /js/classes/visualization.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:22] “GET /js/data.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:22] “GET /js/visualize.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:22] “GET /js/external/jquery-ui.min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:23] “GET /js/external/fiber.min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:23] “GET /js/external/gmaps.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:23] “GET /js/external/moment.min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:23] “GET /js/external/jQDateRangeSlider-min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:23] “GET /js/external/color.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:24] “GET /js/util/color.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:24] “GET /js/util/map.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:24] “GET /js/classes/visualization.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:24] “GET /js/data.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 16:22:24] “GET /js/visualize.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:27] “GET / HTTP/1.1” 304 -
127.0.0.1 - - [07/Apr/2020 17:08:27] “GET /css/jQRangeSlider/iThing-min.css HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:27] “GET /css/visualize.css HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:27] “GET /js/external/jquery-1.10.2.min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:27] “GET /js/external/jquery-ui.min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:27] “GET /js/external/fiber.min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:27] “GET /js/external/gmaps.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:27] “GET /js/external/moment.min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:27] “GET /js/external/jQDateRangeSlider-min.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:28] “GET /js/external/color.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:28] “GET /js/util/color.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:28] “GET /js/util/map.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:28] “GET /js/classes/visualization.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:28] “GET /js/data.js HTTP/1.1” 404 -
127.0.0.1 - - [07/Apr/2020 17:08:28] “GET /js/visualize.js HTTP/1.1” 404 -

So no errors on the server on page load. Now you will need to inspect the JavaScript client. How to do this depends on your browser. Look up “inspect page” for your browser.

localhost/:4 GET http://localhost:5000/css/jQRangeSlider/iThing-min.css net::ERR_ABORTED 404 (NOT FOUND)
localhost/:6 GET http://localhost:5000/css/visualize.css net::ERR_ABORTED 404 (NOT FOUND)
localhost/:17 GET http://localhost:5000/js/external/jquery-ui.min.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:19 GET http://localhost:5000/js/external/fiber.min.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:21 GET http://localhost:5000/js/external/gmaps.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:22 GET http://localhost:5000/js/external/moment.min.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:23 GET http://localhost:5000/js/external/jQDateRangeSlider-min.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:24 GET http://localhost:5000/js/external/color.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:26 GET http://localhost:5000/js/util/color.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:27 GET http://localhost:5000/js/util/map.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:29 GET http://localhost:5000/js/classes/visualization.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:31 GET http://localhost:5000/js/data.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:32 GET http://localhost:5000/js/visualize.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:16 GET http://localhost:5000/js/external/jquery-1.10.2.min.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:17 GET http://localhost:5000/js/external/jquery-ui.min.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:19 GET http://localhost:5000/js/external/fiber.min.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:21 GET http://localhost:5000/js/external/gmaps.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:22 GET http://localhost:5000/js/external/moment.min.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:23 GET http://localhost:5000/js/external/jQDateRangeSlider-min.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:24 GET http://localhost:5000/js/external/color.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:26 GET http://localhost:5000/js/util/color.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:27 GET http://localhost:5000/js/util/map.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:29 GET http://localhost:5000/js/classes/visualization.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:31 GET http://localhost:5000/js/data.js net::ERR_ABORTED 404 (NOT FOUND)
localhost/:32 GET http://localhost:5000/js/visualize.js net::ERR_ABORTED 404 (NOT FOUND)
util.js:230 Google Maps JavaScript API warning: NoApiKeys https://developers.google.com/maps/documentation/javascript/error-messages#no-api-keys
xz.o @ util.js:230
(anonymous) @ js?sensor=true:141
Promise.then (async)
(anonymous) @ js?sensor=true:141
setTimeout (async)
Cj @ js?sensor=true:141
google.maps.Load @ js?sensor=true:14
(anonymous) @ js?sensor=true:233
(anonymous) @ js?sensor=true:233
util.js:230 Google Maps JavaScript API warning: SensorNotRequired https://developers.google.com/maps/documentation/javascript/error-messages#sensor-not-required

Whoops, I was wrong, there are a lot of 404 page missing errors.

What URL are you opening? Try http://127.0.0.1:5000 in addition to http://localhost:5000 and even http://0.0.0.0:5000.

I’m opening http://localhost:5000, which has the same behavior as http://127.0.0.1:5000/. http://0.0.0.0:5000/ results in “This site can’t be reached”.

What version of python are you running?

2.7.17

I don’t understand what’s happening then. When you ran pip install -r requirements.txt did you have any issues?

No

Although I would like to know if the ‘css’, ‘img’, and ‘js’ folders are residing in the correct directory. Currently they’re under ‘static’.

The problem seems to be that the flask web server is not serving web pages properly, but I don’t understand why it would be doing that. The code expects them to be in static, and they are. I would expect there to be errors on startup of the Flask server if there are issues.

As you can see from the video I made years ago, this should all be working. This code has not changed in a very long time.