Git Product home page Git Product logo

iptracker's Introduction

Frontend Mentor - решение для отслеживания IP-адресов

Это решение проблемы отслеживания IP-адресов на Frontend Mentor.

Используя испытания на #frontendMentor Я улучшил свое понимания в работе с API в работе с polyfill, а так же в построения проектов и модулей.

Оглавление

Примечание. Удалите это примечание и обновите оглавление в зависимости от того, какие разделы вы сохранили.

Обзор

Соревнование

Пользователи должны иметь возможность:

  • Просмотр оптимального макета для каждой страницы в зависимости от размера экрана их устройства
  • Просматривайте состояния наведения для всех интерактивных элементов на странице.
  • Увидеть собственный IP-адрес на карте при начальной загрузке страницы
  • Поиск любых IP-адресов или доменов и просмотр ключевой информации и местоположения

Снимок экрана

Ссылки

  • Репозитории на: github
  • Готовый проект: ipfind

Мой процесс

Построено с помощью

  • Семантическая разметка HTML5
  • Методология БЭМ
  • Leaflet
  • API JavaScript
  • Пользовательские свойства CSS
  • FlexBox
  • CSS-сетка

Что я выучил

Я научился работать с многими технологиями в том числе и с parcel, babel В написании html семантики использовал методологию БЭМ. Так же,чтобы проект был чище было мною принято решения использовать модули и разносить на разные модули.

<h1 class="title">IP Address Tracker</h1>
<div class="search-bar">
  <input
    type="text"
    class="search-bar__input"
    placeholder="Search for any IP address or domain"
  />
  <button class="search-bar__btn"></button>
</div>
<div class="info">
  <div class="info__block">
    <div class="info__block-subtitle">IP Address</div>
    <div class="info__block-title" id="ip"></div>
  </div>
</div>
  .search-bar__btn::after {
  border-color: white white transparent transparent;
  transform: rotate(45deg);
}
function setInfo(mapData) {
  const { lat, lng, country, region, timezone } = mapData.location;
  ipInfo.innerText = mapData.ip;
  locationInfo.innerText = country + " " + region;
  timeZoneInfo.innerText = timezone;
  ispInfo.innerText = mapData.isp;

  map.setView([lat, lng]);
  L.marker([lat, lng], { icon: markerIcon }).addTo(map);
  if (matchMedia("(max-width: 1023px)").matches) {
    addOffset(map);
  }
}

Продолжение разработки

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

Время на написания проекта

  • (не включая css и html)

Доска Kanban

✨ Я использовал доску канбан, чтобы проще было ориентироваться в поставленных задачах. Я как и в предыдущем проекте использовал Notion

✨ Во время проекта канбан-доска была полезна для отслеживания того, что нужно сделать. Это снимок того, как это выглядело во время проекта:

Полезные ресурсы

  • Изменено структура parcel - Структура parcel немного изменилась, со временем последнего использования. Документация очень помогла мне решить мою задачу.
  • Решение проблемы с deploy в vercel - Я очень долго копался в запуске своего приложения, это видео помогло мне запустить свое приложения vercel

Автор

Благодарность

Спасибо моему ментору по разработке Михаилу, за помощь в реализации и за терпения научить меня чему-то😊

iptracker's People

Contributors

ibrakhimzhanov avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.