Pixel — Діагностика екрана
Застосунок, що тестує екран вашого телефона й допомагає відновити застряглі пікселі.
Pixel — застосунок для телефона, який перевіряє екран на проблеми й запускає п'ять режимів відновлення для застряглих пікселів. Я сам проєктую і розробляю його на Expo та React Native.
Pixel — це застосунок для телефона, який дбає про ваш екран. Він пропонує п'ять анімацій відновлення застряглих пікселів, п'ять тестів екрана, ліхтарик із понад 30 кольорами та невеликий сервер, який дивиться на фото вашого екрана й знаходить проблемні точки. Створено однією людиною на Expo та React Native.
- Роль
- Самостійно — дизайн і код
- Терміни
- Триває
- Стек
- Expo SDK 54 · React Native 0.81 · React 19 · TypeScript (strict) · Reanimated v4 · Express 5 · PostgreSQL · Drizzle ORM · sharp · React Compiler + New Architecture
Ідея
Застряглий піксель часто можна відновити — за допомогою правильного світлового шоу.
Наука за цим.
Іноді одна крихітна крапка на вашому екрані застрягає на одному кольорі. Якщо швидко й достатньо довго блимати на неї яскравими кольорами, її часто вдається знову «розбудити». Різні проблеми потребують різного світла: швидке блимання, повільні хвилі кольору або випадковий шум. Одного режиму відновлення замало — тому в застосунку їх п'ять.
Що це за застосунок.
Pixel — це повноцінний набір інструментів для екрана, побудований навколо цієї ідеї. Він має п'ять анімацій відновлення, п'ять тестів екрана, ліхтарик із понад 30 кольорами та сервер, який перевіряє фото вашого екрана й указує на пікселі, що потребують допомоги. Один застосунок, два завдання — знайти проблему, а потім її усунути.
Головна функція
П'ять режимів, п'ять способів відновити піксель.
Кожен режим блимає екраном по-своєму.
- Color-Cycle — Червоні, зелені та сині спалахи у випадковому порядку. Універсальний режим, який спрацьовує, коли ви не знаєте, у чому проблема.
- Fast-Flash — Чистий чорний і білий, що блимають 60 разів на секунду. Найсильніший сигнал — для пікселів, які застрягли надовго.
- Random-Pixel — Тисяча крихітних крапок телевізійного шуму, що перемальовуються щокадру. Візерунок, який допомагає повністю «мертвому» пікселю.
- Pulse-Wave — Повільні хвилі кольору з м'якими змінами яскравості. Делікатний режим — для слідів від зображень, що надто довго залишалися на екрані.
- Gradient-Sweep — Веселка, що ковзає екраном по одному пікселю за раз. Вона вловлює тьмяні точки, які пропускає повноекранний спалах.
Знаходити проблеми, а не лише усувати їх
Повний огляд екрана всередині інструмента для відновлення.
П'ять тестів поспіль.
Screen Test проведе вас крізь п'ять невеличких тестів — мертві пікселі, рівномірна яскравість, плавні переходи кольору, швидкість відгуку та точність кольору. Ви можете пройти повний огляд за один присіст або одразу перейти до того тесту, який вас цікавить.
А поряд — ще чотири.
Є також Touch Test (чи відчуває кожна частина екрана ваш палець?), Screen Calibration для яскравості та кольору, повноколірний Pixel Test для виявлення мертвих пікселів на око й підсумковий екран. Усього дев'ять екранів огляду, і всі — в одному застосунку.
Сервер
Бекенд, який справді дивиться на ваші пікселі.
Як це працює.
Ви робите фото свого екрана, і застосунок надсилає його на невеликий сервер. Сервер сканує знімок, знаходить місця, де кольори виглядають неправильно, і повертає їхні точні координати. Тоді застосунок малює ці точки поверх зображення з камери, щоб ви знали, куди скеровувати відновлення.
З чого складається сервер.
- Express 5 — Невеликий вебсервер з одним завданням: отримати фото й швидко відповісти.
- sharp для аналізу — Інструмент для обробки фото, що вимірює зображення піксель за пікселем — швидко й точно.
- PostgreSQL + Drizzle — База даних. Застосунок і сервер мають один спільний набір типів даних, тож вони завжди розмовляють однією мовою.
- Поставка одним файлом — Сервер пакується в один невеликий файл з однією командою запуску — його легко запустити будь-де.
Бонусна функція
Ліхтарик, схований усередині застосунку для відновлення.
30+ кольорів, яскравість одним жестом.
Вкладка Lantern — це кольоровий ліхтарик: понад тридцять кольорів, повзунок яскравості й повноекранний режим, у якому рух пальцем угору-вниз змінює світло в реальному часі. Він навіть синхронізується з власним налаштуванням яскравості телефона. Ніхто не очікує побачити таке в застосунку для відновлення екрана — і саме через це багато людей залишають його встановленим.
Майстерність
Маленькі деталі, що тримають усе разом.
Що під капотом.
- Розміри, що адаптуються — Текст і кнопки масштабуються відповідно до розміру телефона — тож на великому телефоні кожен підпис не перетворюється на заголовок.
- Один файл теми — Усі кольори, відступи й стилі тексту живуть в одному файлі. Зміни його раз — і весь застосунок підхопить зміни.
- Іконки під кожну платформу — Іконки в стилі Apple на iPhone, відповідні іконки на Android — кожна платформа відчувається собою.
- Найновіший рушій React — Застосунок працює на найновішому рушії React Native, який залишає плавними навіть важкі анімації.
Наступний проєкт: Sprout — Грошові афірмації