/country-me

Приложение для просмотра актуальной информации по стране посетителя, или по запросу конкретной страны. Так же приложение открывает API для получения информации о случайной стране

Primary LanguageJavaScript

Приложение Country Me

Идея приложения состоит в том, что при входе в него вычисляется ваша страна на основе вашего IP. Далее эта информация используется для того, чтобы отобразить краткую справку о вашей стране, показать на карте ее местоположение, показать погоду в столице и несколько фотографий вашей страны. Это выглядит так, как будто вы вошли в профиль своей страны в Twitter.

Для работы приложения используется несколько API.

ipstack

API для получения информации о запрошенном IP. Используется для определения страны пользователя. Настройки в Heroku:

Google Maps API

API карт Google используется для отображения карты с расположением вашей страны. Настройки Heroku:

Dark Sky API

API используется для получения информации о погоде в сталице вашей страны. Настройки в Heroku:

Flickr API

API используется для получения картинок с изображением вашей страны по тегам с названием страны и столицы страны. Настройки в Heroku:

Важно! Для запуска этого приложения локально вам нужно будет иметь все эти настройки в окружении env вашего сервера. Вы можете создать .env файл или воспользоваться другими способами. Без этих переменных в окружении приложение локально работать не будет.

Так же для запуска вам потребуется иметь строку подключения к MongoDB. В своем проекте я использую инстанс с mLab. Вы можете использовать что угодно. Строка подключения к MongoDB содержится так же в настройках окружения:

  • MONGODB_URI='mongodb:// ваша строка подключения'.

Важно! Не забудьте добавить строку подключения в переменные окружения.

Приложение так же использует ещё один открытый API. REST COUNTRIES. Для его вызова вам не нужно проводить никаких настроек. Оно вызывается при первом старте приложения и наполняет базу данных необходимыми данными о странах.

Приложение развернуто на сервере Heroku и доступно по адресу https://country-me-staging.herokuapp.com/. Как уже упоминалось выше, приложение использует облачный сервис с базами данных MongoDB mLab. В основе приложения лежит небольшой express-backend с частью front-end на React. Для сборки приложения используется Webpack.

Для запуска приложения локально нужно произвести следующие действия:

  1. Настроить все переменные окружения так, как это сказано выше.
  2. Выполнить команду npm install для восстановления всех необходимых зависимостей.
  3. Запустить все тесты командой npm test для того, чтобы убедиться что все настроено правильно.
  4. Выполнить команду npm start и перейти по предложенному на консоли URL.

В приложении используются графические материалы, нарисованные моей женой Катериной.

Спасибо команде Treehouse Island за интересные задания, которые они предлагали к выполнению на протяжении всей программы Full Stack JavaScript. Надеюсь вам понравится мой дипломный проект.