Разработали портал машинок Hot Wheels на фрейморке Symfony
Уверен, что у большинства людей, причастных к созданию каких-либо проектов (необязательно web/it), есть желание сделать что-то не по ТЗ. Как архитектор мечтает проектировать без оглядки на ген.план, а режиссер снимать авторское кино.
Начиналось всё как у всех: увидел в магазине машинки hot wheels, вспомнил какими недосягаемыми они казались в детстве. На чувстве ностальгии взял пару штук. Потом ещё пару… Оправдывая себя тем, что покупаю их для сына, в течении пары месяцев набрал более 100 штук. И появилась проблема с дублями. Далее к процессу подключилась жена и проблема только увеличилась: теперь нужно было помнить не только то, что ты когда-то покупал, но и знать не взяла ли тоже самое твоя половина.
Так начался путь длиной в 12 месяцев и 2 недели...
Портал для коллекционеров Hot Wheels должен был решить следующие задачи:
- сделать удобный архив/каталог всех моделей:
- дать возможность собрать и показать свою коллекцию;
- дать по возможности полную информацию о каждой модели.
Кроме чисто мальчишеского азарта, этой идеей мы бросали себе вызов как веб-студии, так как это наш первый проект на фрэймворке Symfony.
Итак, основной функционал сайта заключается в возможности собрать и показать свою коллекцию машинок, а также создать вокруг портала комьюнити, где участники клуба смогут оценивать коллекции друг друга, обмениваться моделями, участвовать в рейтингах и составлять свои wish-листы.
Структура коллекций
Чтобы структурировать все модели, нам нужна была система, позволяющая четко разделить коллекции и серии машинок. Изучив опыт коллекционеров и информацию производителей, мы создали свою авторскую иерархию серий и коллекций.
Отталкивались от базовых признаков модели: блистер, колеса, детальность и один особенно характерный признак (например, id или character). В итоге получилось 5 категорий:
- Mainline (пластиковые колеса);
- ID (встроенный чип);
- Character (по мотивам мультипликационных персонажей);
- Premium (резиновые колеса);
- Exclusive (высокая детализация).
Собрать коллекцию
Основная идея создания портала - возможность поделиться своей коллекцией моделей Hot Wheels с другими коллекционерами. Не разложенной на ковре и сфотканной с табуретки, где ничего нельзя увидеть. А в достойном виде, где все модели можно сортировать, фильтровать и про каждую можно узнать дополнительную информацию. А самые желанные модели из чужой коллекции добавить в свой wishlist.
Главная страница сайта
Коллекция пользователя
Рейтинг
По мере пополнения личной коллекции каждому пользователю присваиваются достижения: за собранную коллекцию и за общее количество тачек. Все пользователи участвуют в общем рейтинге ТОП-100.
А что внутри кода?
Со стороны технической части:
- 90% проекта работает на ajax (подгрузка контента и взаимодействие пользователя с сайтом);
- для сбора и загрузки данных написана система на node.js с использованием puppeteer;
- frontend на JS фреймворке Stimulus;
- backend на PHP фрэймворке Simfony:- twig шаблонизатор (генерация верстки),- webpack (сборщик проекта).
Развитие проекта
Проект запущен в мае 2023. В течении первых двух недель сайт занял ТОП поисковой выдачи по огромному облаку запросов. И начался рост базы пользователей. На момент написания статьи - 21 сентября 2023 года - на портале зарегистрировано 330 коллекционеров.
Для удобства администрирования создан канал в ТГ, где пользователи задают вопросы и накидывают идеи по развитию проекта. Одной из таких идей стал рейтинг коллекционеров.
Сейчас на сайт залито около 22 000 артикулов с 2000 года по настоящее время. Каталог будет расширяться моделями из 90х и 80х годов. И в итоге, по машинкам тоже будет свой рейтинг.
90% проекта работает на ajax (подгрузка контента и взаимодействие пользователя с сайтом)
Для 2013 года это действительно круто
Мощный портал машинок на фрейморке - это просто огонь!