Всё здесь создано для того, чтобы это читала машина
Что объединяет эту категорию — вы почти никогда не являетесь потребителем результата. Сканер читает штрих-код, камера телефона читает QR-код, база данных индексирует UUID, браузер отображает цвет. Поэтому для каждого инструмента здесь важен один и тот же вопрос: примет ли это то, что должно его получить?
Код, который кто-то отсканирует на кассе или на паллете — генератор штрих-кодов. EAN-13, UPC, Code128 и остальные, с уже рассчитанной контрольной цифрой.
Код, который кто-то отсканирует телефоном — генератор QR-кодов. Семнадцать типов данных, логотипы, градиенты, и каждый код проверен сканированием перед скачиванием.
Идентификатор для строки базы данных или объекта API — генератор UUID, версии 1 и с 3 по 7.
Цветовое значение в конкретной нотации — палитра цветов: HEX, RGB, HSL, OKLCH, CMYK, а также ближайший токен Tailwind.
Число или список чисел — случайные числа в заданном вами диапазоне, или простые числа в заданном диапазоне.
Штрих-код или QR-код?
Тот самый вопрос, с которым сюда приходит большинство людей, и ни одна страница продукта по отдельности на него не отвечает, потому что каждая знает только о себе.
Штрих-код, если число уже существует и его должен прочитать кто-то в розничной или логистической цепочке — касса, складской сканер, система учёта. Одномерный штрих-код хранит короткое число и больше ничего. Его достоинство в том, что даже старый лазерный сканер читает его мгновенно и надёжно, и на этом допущении построены целые отрасли.
QR-код, если считывающее устройство — телефон, а данные богаче, чем просто число: URL, данные Wi-Fi, vCard, платёжная строка. QR хранит намного больше данных, переживает частичное повреждение благодаря коррекции ошибок и сканируется под любым углом. Чего он не умеет — участвовать в розничных системах, которые ожидают GTIN.
Если ответ звучит как «я хочу, чтобы люди сканировали этот плакат телефоном» — это QR-код. Если ответ «наш поставщик попросил штрих-код на коробке» — это штрих-код, и число для него должно прийти именно от поставщика.
Сгенерированное — не значит зарегистрированное
Различие, которое вызывает больше всего разочарований, поэтому стоит сказать прямо.
Штрих-код, сгенерированный здесь, — это не официальный номер товара. Генератор рисует корректный, сканируемый символ с правильной контрольной цифрой для любых цифр, которые вы введёте. Он не может выдать вам GTIN — эти номера выдаёт GS1, они стоят денег, и продавец, отсканировав самостоятельно придуманный номер, обнаружит, что он принадлежит кому-то другому или вообще никому. Подходит для внутренних складских этикеток, но не для того, что пойдёт через магазин.
UUID уникален, но не секретен. Коллизия — не практическая проблема, но v4-UUID в URL всё равно остаётся значением, которым можно поделиться, которое можно залогировать или вставить в обращение в поддержку. Уникальность — это не авторизация. Если ресурс нужно защитить, ему нужна проверка доступа, а не непредсказуемое имя.
QR-код настолько хорош, насколько хорошо то, на что он указывает. Сам код постоянен после печати; URL за ним — нет. Направляйте напечатанные коды на ссылку, которую вы контролируете и можете перенаправить, а не на URL кампании, которую вы отключите через полгода.
Каждый инструмент на этой странице работает полностью в браузере, поэтому ничего из того, что вы кодируете — платёжную строку, пароль от Wi-Fi или идентификатор клиента — никуда не передаётся.