Вернуться к блогу
06.09.2023
Давайте знакомиться! Мы аккредитованная IT-компания Amiga, специализируемся на web и mobile разработке. Среди наших клиентов: X5 Retail Group, Mercedes-Benz, Сбербанк, SOKOLOV и другие, чьи названия под NDA. Любим Flutter и посвятили ему целый тг-канал, но там еще много всего интересного, поэтому подписывайтесь.
В этой статье расскажем, как за 1 месяц мы разработали VK mini app EASY, которое поможет множеству школьников превратить свою мечту в профессию.
Приложение разработано с нашими большими друзьями из UXART.
EASY – это приложение, которое познакомит школьников с миром самых популярных современных профессий. С помощью кейсов-симуляций каждый пользователь узнает, какие soft и hard скиллы требуются для работы в разных областях.
Школьнику доступно более 20 подобных кейсов, в которых он должен решить разного типа задачи: выбор правильного ответа, проектирование схемы или создание модели.
После успешного выполнения заданий от компаний школьники смогут попасть на online и offline стажировки, где вместе с кураторами попробуют себя в роли выбранной профессии.
Выбор профессионального пути — это один из самых сложных, но важных этапов нашей жизни. Порой «в поиске себя» мы проводим слишком много времени, часто так и не получив желаемых результатов. По статистике 50% выпускников ВУЗов России работают не по специальности.
Мы хотим помочь молодым людям с выбором их будущей профессии, чтобы они изучали и делали то, что нравится именно им!
Команда «Easy» вместе с экспертами создали практические задания, которые позволяют прикоснуться к той или иной профессии заранее. Мы надеемся, что такой подход поможет многим молодым ребятам выбрать свой путь.
Юлия Автенюк, Founder & Art Director компании Easy
Схематично пользователь в приложении Easy проходит примерно такой путь:
Онбординг показывается только 1 раз при запуске приложения и служит помощником для знакомства с его миссией. Далее пользователь попадает на экран со списком кейсов по направлениям: AI, кинопродюсер, PM, робототехника и другие.
В аннотации указано: автор кейса, длительность его прохождения, описание области деятельности и возможность сделать донат. Задания представляют собой вопросы с вариантами ответов, итог с пояснением выдается сразу.
После прохождения кейса пользователь видит подборку тематических фильмов или книг, а также он может подписаться на группу в VK с единомышленниками.
Мы старались сделать приложение максимально легким, ведь наша основная аудитория — это школьники и студенты. По этой же причине в стилистике мы используем яркие цвета и креативные иллюстрации.
Уже сейчас вы можете познакомится с MVP-версией, но приложение несомненно будет развиваться, так как мы отрисовали гораздо больше различных видов заданий. Кроме этого, мы продолжаем вести переговоры с новыми компаниями, которые смогут предоставить стажировку и помочь нам с составлением кейсов.
Артём Конаков, Product Owner, CEO UXART
В приложении есть три статуса кейсов:
Если кейс с вопросами опубликован, но пользователь не начал проходить кейс, то вместо статуса указывается время прохождения кейса.
Если пользователь начал проходить кейс, но не закончил, то при следующем открытии детальной страницы кейса появится модальное окно с предложением продолжить прохождение на том моменте, где пользователь остановился, либо начать заново.
Экран с результатами
Экран с результатами показывает, успешно был пройден кейс или нет. Также на этом экране находится подборка фильмов и книг и кнопка «Вступить в чат».
VK mini apps — это современная платформа, которая позволяет без публикации в Google Play и App Store создать мобильное приложение и разместить его в магазине приложений VK.
Преимущества такого решения для клиента:
Преимущества решения для разработчиков:
Сложности
В течение продолжительного времени мы добивались одинакового отображения видеоконтента в кейсах, как при загрузке с YouTube, так и с сервера. Нам было необходимо привести их к определенному стандарту, чтобы не нарушать целостность визуальной концепции.
Для решения проблемы мы использовали популярную библиотеку Video.js. и с помощью плагина (расширения), специально предназначенного для работы с YouTube, внесли необходимые модификации.
Теперь администраторы приложения могут добавлять видео с Youtube или загружать контент на сервер, а в приложении они будут выглядеть одинаково эстетично.
Мы стремились запустить проект на основе современных технологий (Vite и TypeScript), чтобы в будущем заказчик мог трансформировать VK-приложение в полноценную мобильную и веб версии при минимальных вложениях.
При верстке дизайна проекта мы столкнулись с проблемой стилизации фона онбординга на iPhone.
Образовалась белая полоса снизу, которая «ломала» дизайн-концепцию и восприятие интерфейса в целом. Для устранения проблемы мы использовали VK Bridge — это встроенный инструмент VK, который позволяет задавать определенные параметры элементам управления мобильных устройств (iOS и Android).
Приложение должно быть простым в использовании для самого клиента, чтобы в дальнейшем он мог самостоятельно добавлять новые кейсы, видеоматериалы и другой контент.
Мы кастомизировали Orchid (Laravel Admin Panel) под требования заказчика. Получилась административная панель, с которой приятно и нативно понятно взаимодействовать человеку без опыта в программировании.
Мы, не раздумывая, взялись за интересный с технической стороны и полезный для подрастающего поколения проект. Реализация заняла 1 месяц, что радует и нас, и заказчика.
Слаженный коллектив профессионалов! С первой минуты знакомства было понятно, что команда Amiga настроены на один результат — ПОБЕДА, где высокое качество граничит с идеалом.
С ребятами по настоящему легко и приятно работать. Каждый — эксперт в своем деле. Невероятно высокая заинтересованность, активность, инициативность, что очень радует и даже мотивирует!
Amiga — amigos de verdad!
Юлия Автенюк, Founder & Art Director компании Easy
Благодаря технологиям, используемым при разработке приложения, клиент может с минимальными усилиями конвертировать VK mini app в полноценное мобильное приложение или сайт. Это дает хорошие перспективы для развития и расширения проекта!
Мы объединили всю экспертизу в нашей компании и успешно реализовали современное мобильное приложение с прекрасной и светлой миссией — помощь детям в выборе будущей профессии.
Очень символично, что благодаря этому проекту я познакомился с одним разработчиком-энтузиастом. Он рассказал, как запускал своё приложение и предупредил о возможных трудностях, с которыми мы можем столкнуться.
Нас воодушевляет, когда люди любят то, чем они занимаются и готовы делиться своими знаниями во благо других!
Руслан Ревель, Teamlead Amiga
Frontend: React, TypeScript, Vite, VK Bridge, VK UI, Video.js, Framer Motion, Swagger Backend: PostgreSQL, PHP 8.2, Composer, Laravel 9, Система кеширования Redis, Вебсервер Nginx, Orchid
Библиотека VK Bridge предоставляет возможность приложениям использовать API ВКонтакте и API операционной системы (iOS, Android), установленной на устройствах пользователей. Благодаря встроенному инструменту VK Bridge мы реализовали весь дизайн проекта, не отходя от технического задания.
Для реализации функционала плеера был применен мощный инструмент для воспроизведения видео — Video.js. Он обеспечивает широкий функционал и возможности для управления и воспроизведения видео в приложении.
Framer Motion (библиотека React-приложений) мы использовали для создания динамичных и анимированных интерфейсов. С помощью него нам удалось добиться плавного воспроизведения анимаций в пользовательском интерфейсе.
Поскольку мы использовали Swagger для документирования нашего API, мы приняли решение воспользоваться пакетом swagger-typescript-api. Этот пакет предоставляет автоматическую генерацию запросов API и моделей данных для TypeScript, что значительно сократило время и помогло нам более быстро решить все задачи. Благодаря этому решению мы смогли автоматизировать процесс создания API запросов и моделей данных, что в конечном итоге привело к повышению эффективности и ускорению разработки.
Дарья Малкова — Руководитель проекта
Руслан Ревель — Teamlead Frontend
Антон Горохов — Teamlead Backend
Олег Поляков — PHP разработчик
Олег Коваленко — Тестировщик