Мы рекомендуем использовать Python 3 с anaconda. Существуют также зависимости, не относящиеся к conda, которые можно установить с помощью pip:
pip install -r requirements.txt
Чтобы избежать фиксации выходных данных блокнотов IPython, которые могут быть очень большими и затруднять чтение различий, установите nbstripout в качестве фильтра git.
В каталоге data
находится Makefile
, который управляет запуском блокнотов IPython и обновлением соответствующих выходных файлов.
cd data
make
Большинство наборов данных включены в этот репозиторий, но некоторые из них довольно велики, поэтому их необходимо загружать отдельно, как показано ниже.
Вам нужно загрузить их только в том случае, если вы хотите поработать над соответствующей обработкой; данные, необходимые для разработки приложения, находятся в папках data/*/output
, особенно data/map/output
.
Из этих источников:
Файлы должны храниться здесь:
data/cap/input/2014_All_CAP_Search_Results_Data_P14_1.xls
data/cap/input/2015/DAERA-Table 1.csv
data/cap/input/2015/RPA-Table 1.csv
data/cap/input/2015/RPA2-Table 1.csv
data/cap/input/2015/SGRPID-Table 1.csv
data/cap/input/2015/WG-Table 1.csv
data/cap/input/2016_All_CAP_Search_Results_Data_P14.xlsx
data/cap/input/2017_All_CAP_Search_Results_Data_P14.xlsx
Из этих источников:
Файлы должны храниться здесь:
data/cordis/input/fp7/cordis-fp7briefs.xlsx
data/cordis/input/fp7/cordis-fp7organizations.xlsx
data/cordis/input/fp7/cordis-fp7projects.xlsx
data/cordis/input/h2020/cordis-h2020organizations.xlsx
data/cordis/input/h2020/cordis-h2020projects.xlsx
С этой страницы:
Файлы должны храниться здесь:
data/erasmus/input/CoopIndustrialisedCountries_Projects_Overview_2018-09-10.xls
data/erasmus/input/ErasmusMundus_Projects_Overview_2018-09-10.xls
data/erasmus/input/ErasmusPlus_JeanMonnet_Projects_Overview_2018-09-10.xls
data/erasmus/input/ErasmusPlus_KA1_2014_LearningMobilityOfIndividuals_Projects_Overview_2018-09-11.xls
data/erasmus/input/ErasmusPlus_KA1_2015_LearningMobilityOfIndividuals_Projects_Overview_2018-09-11.xls
data/erasmus/input/ErasmusPlus_KA1_2016_LearningMobilityOfIndividuals_Projects_Overview_2018-09-11.xls
data/erasmus/input/ErasmusPlus_KA1_2017_LearningMobilityOfIndividuals_Projects_Overview_2018-09-10.xls
data/erasmus/input/ErasmusPlus_KA1_2018_LearningMobilityOfIndividuals_Projects_Overview_2018-09-10.xls
data/erasmus/input/ErasmusPlus_KA2_CooperationForInnovationAndTheExchangeOfGoodPractices_Projects_Overview_2018-09-10.xls
data/erasmus/input/ErasmusPlus_KA3_SupportForPolicyReform_Projects_Overview_2018-09-10.xls
data/erasmus/input/ErasmusPlus_Sports_Projects_Overview_2018-09-10.xls
data/erasmus/input/LifeLongLearning_Projects_Overview_2018-09-10.xls
data/erasmus/input/Sports_Projects_Overview_2018-09-10.xls
data/erasmus/input/Tempus_Projects_Overview_2018-09-10.xls
data/erasmus/input/YouthInAction_Projects_Overview_2018-09-10.xls
С этой страницы:
https://www.eea.europa.eu/data-and-maps/data/natura-9#tab-european-data
CSV-файл NATURA2000SITES
должен храниться здесь:
data/life/input/NATURA2000SITES.csv
Для поиска по почтовому индексу загрузите данные с https://opendata.camden.gov.uk/Maps/National-Statistics-Postcode-Lookup-UK/tr8t-gqz7, заархивируйте их и сохраните здесь:
data/postcodes/input/National_Statistics_Postcode_Lookup_UK.csv.gz
Последнее приложение находится в каталоге frontend
. Это статический веб-сайт, созданный с помощью webpack.
Установите узел js версии 8.11 или выше.
Приложение использует Google Maps, поэтому для разработки вам потребуется создать учетную запись Google Cloud Platform. Для этого потребуется ввести кредитную карту, но использование разработки обычно будет осуществляться на бесплатном уровне.
Перейдите к списку API и убедитесь, что API JavaScript Google Maps и API Places включены.
Перейдите в список «Учетные данные» и сгенерируйте ключ API для разработки.
Для разработки вам необходимо поместить ключ API Google Maps для разработки в переменную среды:
DEVELOPMENT_MY_EU_API_KEY=YourKeyHere
(Для развертывания в рабочей среде вам потребуется переменная PRODUCTION_MY_EU_API_KEY
, для которой задан ключ производственного API; см. примечания по развертыванию ниже.)
cd frontend
npm install
npm run dev
Это запустит приложение с использованием сервера разработки webpack-serve
по адресу http://localhost:8080/webpack-dev-server/
. Изменения в исходных файлах приложения в frontend/src
в большинстве случаев автоматически перезагружают страницу.
Вы также можете просмотреть то, как оно будет создано в рабочей среде (но с помощью ключа Google Maps API для разработки, чтобы карта загружалась) с помощью
cd frontend
PRODUCTION_MY_EU_API_KEY=$DEVELOPMENT_MY_EU_API_KEY npm run build
npm run serve
rm -rf dist # don't leak your development key!
В корне есть файл editorconfig, который определяет кодировку, табуляцию и пробелы и т. д. Пожалуйста, используйте его. Лучший способ сделать это — получить плагин editorconfig для вашего редактора.
Более красивый форматировщик кода настроен на единообразное форматирование кода JavaScript. Пожалуйста, используйте его. Лучший способ сделать это — приобрести плагин для вашего редактора, но вы также можете запустить
npm install # in the repo root
npm run prettier
отформатировать весь код.
Существует также eslint для проверки JavaScript. Опять же, лучше всего включить плагин для вашего редактора, но вы также можете запустить
npm run eslint
чтобы проверить весь код.
Статический веб-сайт развертывается в облачном хранилище Google за CloudFlare для SSL. Чтобы развернуть:
Вам необходимо предоставить доступ для записи в корзину Google Cloud Storage, на которой размещен веб-сайт.
Вам необходимо получить PRODUCTION_MY_EU_API_KEY
, который ограничивает реферер www.myeu.uk
(и не разрешает использование localhost или других доменов).
Для развертывания с мониторингом ошибок вам необходимо получить ключи ROLLBAR_ACCESS_TOKEN
( post_client_item
) и ROLLBAR_DEPLOY_ACCESS_TOKEN
( post_server_item
) для нашего проекта панели рулонов.
Затем запустите сценарий развертывания для развертывания:
cd frontend
./deploy.sh
Пожалуйста, посетите LICENSE.md
.