GithubHelp home page GithubHelp logo

yellowbluevase / movies-explorer-frontend-1 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tinaevnk/movies-explorer-frontend

0.0 0.0 0.0 1.39 MB

Дипломный проект "Movies-Explorer", Сайт-портфолио + поисковик фильмов (с возможностью сохранения)

Home Page: https://tinaevnk.movies-explorer.nomoredomains.xyz/

JavaScript 58.75% CSS 40.56% HTML 0.70%

movies-explorer-frontend-1's Introduction

Проект Movies-explorer (фронтенд)

Проект является дипломной работой на курсе веб-разработчик Яндекс.Практикума.

Описание


О чём проект?

Данное вэб-приложение является сайтом-портфолио и мини-кинопоиском, открывающимся после регистрации.

Бэкэнд часть проекта располагается тут.

В нём представлены:

  • Лендинг c кратким описанием:
    • Работы над дипломом (этапы, дэдлайны)
    • Изученных технологий во время обучения
    • Информации о себе
    • Портфолио (часть проектов)
  • Поисковик фильмов с возможностью сохранения их к себе в коллекцию

Функциональность:

  • Защищённость роутов (нельзя перейти к приложению-поисковику, если не выполнен вход)
  • Реализована "живая" валидация всех форм/полей ввода с использованием регулярных выражений и сторонних библиотек
  • Использование собственных хуков (универсальный обработчик полей, валидация, контроль разрешения экрана)
  • Возможность поиска фильмов со стороннего API
  • Сохранение/удаление найденных фильмов к себе в аккаунт
  • Реализован фильтр короткометражных фильмов
  • Запоминание состояния полей ввода (в форме поиска фильмов), фильтра и найденных фильмов (при обновлении страницы данные не будут утеряны)
  • Поиск фильмов как на русском, так и английском языке
  • Реализован попап для демонтрации ошибок сервера или некорректных введённых данных
  • При загрузке данных показывается прелоадер. По окончанию загрузки он скрывается
  • Полноценый респонсив для всех популярных разрешений экрана
  • Бургерное меню для мобильной и планшетной версии
  • Реализовано закрытие попапа и бургерного меню по оверлею или по клавише Esc
  • Переход к показу трейлера фильма при нажатии на постер
  • Показ данных о фильме при наведении курсора на постер
  • Все нужные кнопки подсвечиваются outline, им привязанно невидимое, но слышимое описание, для людей с ограниченными возможностями
  • Приложение свёрстано по BEM(БЭМ), соблюдается семантичность
  • На странице поиска фильмов по клику на кнопку "Ещё" - показываются дополнительные фильмы (на роуте с сохранёнными фильмами показываются сразу все фильмы)
  • Утилитарные функции, константы, функции обращения к серверу вынесены в отдельный файл
  • Запросы к серверу написанны с использованием парадигмы ООП
  • Возможность редактирования своего профиля (почты и имени)
  • Запоминание состояния входа пользователя (при обновлении страницы будет выполнен автоматический вход)
  • Реализована микроанимация всех ссылок и кнопок
  • Для создания сеток используется flex и grid
  • Все данные хранятся на сервере, использовано сторонее и собственное API

Используемые технологии:

  • React 17
  • JS
  • HTML 5
  • CSS 3

Планы по доработке:

  • Реализовать сохранение токена в cookie

Директории:

/components — папка с фунциональными компонентами

/context — папка с контекстом

/hooks — папка с кастомными хуками

/images — папка c изображениями

/vendor — папка с кодом сторонних разработчиков

/utils — папка с файлами, требуемых для работы сервиса (утилитарные функции, запросы к серверу, константы)


Запуск проекта:

npm i — установка зависимостей

npm run start — запускает приложение


Ссылки:

movies-explorer-frontend-1's People

Contributors

tinaevnk 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.