Обновить
512K+

Веб-разработка *

Делаем веб лучше

391,76
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Роль UX/UI-дизайна в процессах автоматизации бизнеса на примере оформления ипотеки

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели2K

В этой статье рассказываем, как мы искали где оформить ипотеку. И как нашли кейс, на примере которого показали как можно улучшить юзабилити формы заявки на сайте с точки зрения UX/UI и автоматизации.

Читать далее

Оптимизация бэкенда приложения с примерами на Symfony. Часть 1

Время на прочтение6 мин
Охват и читатели8K

Всех приветствую! Я планирую создать цикл статей, демонстрирующий распространенные ошибки, влияющие на производительность приложения со стороны бэкенда, а также методы их поиска и устранения. Для этого, я написал приложение, в котором специально допустил различные ошибки, чтобы по порядку найти и исправить их.

В текущей статье, рассмотрим темы - n+1, пагинация и индексы. Приятного чтения!

Описание приложения

Рассматриваемый проект - это веб-журнал посещений различных мест людьми с возможностью выгрузки и загрузки журнала в формате XML. Пользователь может загрузить журнал посещений в формате XML через форму на странице /upload, и на основе информации из файла будет заполнена база данных. Вся информация о посещениях будет отображаться на главной странице /index. Экспорт из системы осуществляется через команду, которая преобразует информацию из системы в формат XML и выгружает ее в файл (data.xml).

Читать далее

Работа с размерами изображений с помощью класса Uri в Joomla 4

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели2.5K

Парадокс, конечно, но это возможно. Казалось бы, причем тут класс ядра для работы со строками url. Но именно он может помочь нам в Joomla 4. Статья о том, как автоматически определять размеры файлов изображений для атрибутов width и height с помощью ядра Joomla 4 и не грузить сервер.

Читать далее

Storybook: разработка без боли для команды и бизнеса. Возможности и нюансы

Уровень сложностиПростой
Время на прочтение13 мин
Охват и читатели86K

Всем привет! Если вы считаете Storybook лишним инструментом, эта статья для вас. Раньше я и сам мог присоединиться к такому мнению, но попробовал Storybook в деле, когда участвовал в разработке сервиса рассрочки для одного из крупнейших маркетплейсов. Разработкой этого проекта занимались две команды, состоящие из 15 человек.

Меня зовут Александр, я frontend-разработчик в Simbirsoft. Хочу поделиться, как этот инструмент может сократить время на разработку и тестирование, улучшить качество конечного продукта, а также сэкономить бюджет на больших проектах.

Советую к прочтению фронтенд-разработчикам и тимлидам, которые хотят упростить процесс тестирования и отладки компонентов интерфейса веб-приложений. Также материал может помочь менеджерам проектов и владельцам бизнеса в поиске новых подходов для ускорения и оптимизации процесса разработки. И даже если вы новичок во frontend-разработке и хотите узнать о новых инструментах и технологиях в этой области — welcome.

Мы рассмотрим такие возможности, как создание документации, тестирование, тестирование доступности, работу с моками, аддоны для имитации API и контекста. Я поделюсь, какие проектные задачи мне удалось решить, и чем может быть полезен Storybook для вас.

Читать далее

Java на стероидах, или опыт работы с Jmix

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели14K

Как после привычного Spring за месяц сделать сайт с платформой быстрой разработки Jmix. Коротко о технологии, особенностях, возникающих в процессе вопросах и ответах на них.

Читать далее

Искусственный Художник — Google от мира Text-To-Img

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели3.7K

Здравствуйте, меня зовут Дмитрий Карловский и я люблю рисовать шедевры, но у меня совсем не хватает терпения довести хоть один из них до конца.

Ранее я уже показывал вам самописного убийцу Гугл Поиска. Пользуюсь им до сих пор и доволен чистотой выдачи. Теперь же мы сделаем убийцу Artstation для творческих личностей, у которых терпения хватает лишь на несколько минут, за которые надо успеть создать настоящую красоту. И в этом нам помогут нейронные сети.

Далее вас ждёт реверс-инжениринг HuggingFace API для использования модели Kandinsky, поддержка запросов на 100 языках мира благодаря модели Small100, проектирование бесконечной виртуальной ленты в несколько строк на $mol и, конечно, примеры творчества Искусственного Художника.

Вскрыть пациента

Вовлеченность посетителей сайта: на что влияет, как измерить и как повысить — 4 рабочих способа

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели5.2K

Про важность вовлечения аудитории в социальных сетях поговорили уже все — повторяться не будем. А что насчет сайта? В статье расскажем, какую роль вовлеченность играет в web продвижении, на какие метрики обращать внимание при продвижении сайта и какая есть корреляция между вовлеченностью и продажами. 

Читать далее

Как сделать калькулятор заказов на сайт в Excel и превратить его в генератор счетов

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели11K

Как сделать калькулятор заказов на сайт в Excel и превратить его в генератор счетов

Расчет стоимости заказа онлайн сильно увеличивает конверсию. Еще сильнее она улучшается при немедленном оформлении счета (и договора). Почему же так часто приходится долго ждать расчета стоимости и оформления заказа? Что мешает использовать на сайте тот самый файл Excel, в котором рассчитывает заказ продавец?

Давайте разберемся концептуально →

Если расчет стоимости делается в Excel и этот Excel живет в облаке, то почему бы не позволить любимым клиентам самостоятельно делать расчет в заботливо подготовленном шаблоне? У клиентов разный уровень подготовки, но галочки поставить и ввести свое имя с адресом могут все. А больше от них ничего и не требуется ¯\_(ツ)_/¯

Посмотрим на живом примере → как повесить на сайте свой Excel с расчетом заказа и автоматическим оформление счета (и договора). Не будем пока выяснять что лучше использовать: Google Sheets или MS Office, сегодня разговор не об этом. Плюсы и минусы технической реализации в разных сервисах в этой заметке не рассматриваем.

Читать далее

Способы создания авторизации на сайте. Руководство с примерами. Безопасность в браузере

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели102K

В данной статье мы разберем 4 способа как зарегистрировать нового пользователя:

1.Сторонние сервисы авторизации (такие как Google)

2.Авторизация с использованием токенов

3.Авторизация с помощью номера телефона

4.Логин + Пароль

Статья даст вам конкретный алгоритм реализации каждого способа. Необходимые библиотеки, а также примеры кода. Я постараюсь приводить в пример реализацию на чистейшем JavaScript, для того чтобы вы смогли внедрить функционал в свое проект, не зависимо от используемого фреймворка, однако также будут примеры для тандема Angular + Asp .Net Core. Мы обсудим как защитить ваш сайт от взлома. На сколько это сложно и возможно ли в принципе гарантировать 100% защиту. Итак, давайте приступим.

Читать далее

JavaScript: два интересных сниппета

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели9.3K


Hello, world!


В этой небольшой заметке я хочу поделиться с вами двумя сниппетами, которые показались мне очень интересными. Первый сниппет представляет собой пример реализации простой реактивности (signal), второй — способ предотвращения несогласованности данных в результате состояния гонки (race condition). Первая конструкция используется в SolidJS (с некоторыми дополнительными оптимизациями), вторая — заимствована из одного рабочего проекта.


Интересно? Тогда прошу под кат.

Читать дальше →

Что нам стоит на Bubble построить (+ мнение о возможности симбиоза кода и nocode)

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели25K

Привет! В статье я расскажу про альтернативный способ создания веб-приложений с помощью nocode инструмента Bubble.io - опишу преимущества, недостатки этого подхода, а также постараюсь раскрыть возможности "симбиоза" Javascript и Bubble для реализации качественных проектов и увеличения размера оплаты за работу.

Читать далее

Трудности маскирования текстового поля

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели17K

Один античный оратор говорил, что всем людям свойственно ошибаться. Прошло много веков, а человек продолжает совершать ошибки каждый день. Даже беглое заполнение формы на сайте не обходится без опечаток. 

Хороший UI/UX помогает пользователю избежать большинства таких проблем. Инструментов контроля огромное количество, сегодня расскажу про один их них — создание маски для поля ввода силами Javascript.

Читать далее

Раз и навсегда про тёмную тему или почему вам «на самом деле» нужна тёмная тема

Уровень сложностиПростой
Время на прочтение15 мин
Охват и читатели46K

Привет, Хабр! Про необходимость (или наоборот) тёмной темы для приложения или сайта написан уже не один десяток статей и даже научных работ. По какой‑то необъяснимой причине у дизайнеров интерфейсов и маркетологов по сей день возникает вопрос «так ли нужна тёмная тема», а возможность выбрать тёмную тему оформления до сих пор не является чем‑то самим собой разумеющимся. Настал момент досконально разобраться в вопросе, расставить все точки над Ӹ и отхлестать ленивых дизайнеров селёдкой по лицу.

Я прочёл несколько десятков исследований и сделал выводы, чтобы раз и навсегда развеять сомнения на сей счёт. Если вы из тех кто до сих пор считает, что тёмная тема не нужна — добро пожаловать под кат.

Читать далее

Ближайшие события

Релизы Safari — это ад для разработчиков

Время на прочтение13 мин
Охват и читатели6K

На прошлой неделе выкатили Safari 16.4, и для нас это стало кошмаром. Мы разрабатываем браузерное приложение для создания игр под названием Construct. Ранние версии Safari 16.4 ломали открытие проектов, предпросмотр проектов и весь контент, опубликованный при помощи Construct, каждый раз по-разному. Я захотела поделиться своим опытом, чтобы пользователи, разработчики, регуляторы и сама Apple знали, через что нам пришлось пройти из-за, казалось бы, рутинного релиза Safari.

Разработчики большинства браузеров предоставляют предрелизные версии для предварительного тестирования. Например, ежедневно обновляются Chrome Canary и Firefox Nightly, кроме того, существуют более редкие dev- и beta-релизы. Apple предоставляет Safari Technology Preview (STP), но она совместима только с macOS, и не обновляется по какому-нибудь открыто опубликованному графику. Похоже, это происходит примерно раз в две недели. Предрелизные браузеры обычно довольно шероховаты и содержат очевидные проблемы, которые достаточно быстро устраняют. Однако когда они начинают переходить в состояние беты, необходимо присмотреться повнимательнее. Поэтому когда 16 февраля было заявлено о выпуске Safari 16.4 beta 1 (тоже без какого-либо публичного графика), мы начали присматриваться и обнаружили множество проблем.
Читать дальше →

Как мог бы выглядеть тёмный Хабр

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели7.1K

Пользователи часто спрашивали тёмную тему на Хабре. Насколько мне известно, команда разработчиков в курсе этой потребности, но пока не готова представить реализацию. Тем не менее, она есть.

Смотреть много скриншотов

Знакомьтесь, tRPC

Уровень сложностиСложный
Время на прочтение8 мин
Охват и читатели31K


Hello, world!


В этом туториале мы разработаем простое типобезопасное (typesafe) клиент-серверное (fullstack) приложение с помощью tRPC, React и Express.


tRPC позволяет разрабатывать полностью безопасные с точки зрения типов API для клиент-серверных приложений (предпочтительной является архитектура монорепозитория). Это посредник между сервером и клиентом, позволяющий им использовать один маршрутизатор (роутер) для обработки запросов HTTP. Использование одного роутера, в свою очередь, обуславливает возможность автоматического вывода типов (type inference) входящих и исходящих данных (input/output), что особенно актуально для клиента и позволяет избежать дублирования типов или использования общих (shared) типов.


Руководство по tRPC находится в процессе подготовки — следите за обновлениями ?


Для тех, кого интересует только код, вот ссылка на соответствующий репозиторий.


Интересно? Тогда прошу под кат.

Читать дальше →

Кубики и рогалики в средиземье: разработка игры на svelte с применением ChatGPT и stable diffusion

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели4.3K

Я решил попробовать использовать ChatGPT для создания игр и хотел выбрать что-то простое, что можно сделать за несколько вечеров. В итоге, в сотрудничестве с ChatGPT, мы пришли к идее пошагового рогалика, где основной механикой является бросок кубика. Финальный результат можно посмотреть здесь https://dicequest.vercel.app/

Процесс разработки под катом

Вперед, в Средиземье!

Архитектура front-end приложений — react, react native, angular. Обзор

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели75K

Начнем цикл статей нашей компании легко и непринужденно, с темы из мира front-end. Надеюсь, что статья будет полезна тем, кто хоть как то связан с миром front-end. Предупреждаю, что backend разработчикам может быть скучновато из-за того, что у них давно все стандартизировано)

Когда я провожу собеседование на позицию React разработчика, обычно задаю общий вопрос об архитектуре - "как бы ты строил архитектуру своего приложения и почему?". После обсуждения, я начинаю рассказывать небольшую часть материала из этой статьи, 5% по содержанию, приводя тезисы, по которым можно будет собрать общую картину моего видения. И обычно получаю положительную обратку. Поэтому решил изложить этот материал более развернуто здесь. Буду отправлять ссылку тем, кому это может пригодиться.

Читать далее

Личный кабинет и все, все, все. Часть 1.2. Анализ конкурентов

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели1.9K

Начало здесь.

Русский свет

https://rs24.ru/customer_person_register

1) Форма регистрации.

Нет возможности просмотра введённого пароля.

а) Отсутствие возможности просмотра введенного пароля может привести к ошибкам при наборе и повторному вводу пароля, что может вызвать раздражение и затраты времени.

Что хорошо:

Есть кнопка повтора заказа.

1. Кнопка повтора упрощает процесс оформления заказа для пользователя, поскольку все данные, введенные при предыдущем оформлении заказа, будут автоматически заполнены. Таким образом, не нужно тратить время на повторное ввод данных.

2. Кнопка повтора помогает ускорить процесс обработки заказа со стороны компании. Это связано с тем, что повторный заказ содержит все необходимые данные, что упрощает его обработку компанией.

Читать далее

Личный кабинет и все, все, все. Тестируем, анализируем и занимаемся всяким. Часть 1

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели8.1K

Собственно говоря, в интернете присутствуют чек‑листы для тестирования личного кабинета, но мы(почему «мы»? я, ж один) здесь постараемся подойти к проблеме более комплексно. Посмотрим что получится.

Сразу без долгих подготовок определимся для чего нужОн этот самый личный кабинет(сокращенно ЛК).

Личный кабинет — это организация какого‑либо процесса компании, который раньше был настроен в офлайне. Но из‑за оптимизации ресурсов и автоматизации рутины компания перевела его в онлайн.

Зачем сайту личный кабинет клиента

Личный кабинет пользователя на сайте решает три важных задачи.

Читать далее