In order to run the application and database locally, the following things must be installed on your computer:
- Python 3.6
- Sqlite
- Elasticsearch
Using pip, you will also need to install the following libraries for python 3.
- Pandas
- Numpy
- SQLAlchemy
- wtforms
- Flask
- elasticsearch
Once all requirements have been installed, go ahead and clone the repository or download the files. After all files are in a folder, navigate to that folder in your command prompt and run the app using the command "py app.py" or "python app.py" depending on which one utilizes python 3. Once the server is running, open up a browser and navigate to "localhost:4000" to view it.
In order to get search results from the search engine, you need to configure your local instance of elastic search to run on localhost:10000, by default port 9200 is used, alternatively you could modify the port inside app.py instead. Once elastic search is configured correctly, you need to run elasticsearch.bat (on windows) before you run app.py so that it can actually perform queries. Keep in mind, there will be no data initially in your local instance of elasticsearch, therefore the data needs to be copied over at this time. In the near future, an Admin user will be able to add data while logged in with their admin credentials.
There is an excel file called dropdowns.xls, which contains all the filtering dropdown options that are listed in the search page. To add more options, simply modify this file by adding the option directly underneath the column where you want it to be displayed.