Калькулятор кошторису ремонту для майстра: офлайн, з телефона, за вечір
Майстер з ремонту рахує матеріали в блокноті, помиляється і їде в магазин удруге. Розбираю, як зібрати простий інструмент, що рахує матеріали і формує кошторис для клієнта, і чому найважливіше тут живі користувачі.
Майстри з ремонту квартир перед кожним замовленням рахують матеріали вручну: скільки мішків штукатурки, плитки, кабелю, підрозетників. Помилився в обсязі, і другий заїзд у магазин за свій рахунок або зайві гроші, що лежать у кутку. А ще клієнт просить кошторис, і майстер пише його на аркуші, який потім губиться.
Ось історія інструмента, який одна людина без досвіду розробки зібрала з Claude Code для родички-майстра. На ній добре видно, як виглядає правильний шлях маленького продукту.
Перша версія за вечір
Найпростіша можлива архітектура:
- один файл index.html;
- звичайний JavaScript без фреймворків;
- дані зберігаються в localStorage браузера;
- жодної бази даних, жодних персональних даних;
- нуль гривень на інфраструктуру.
Майстер вводить кімнати і точки (розетки, вимикачі, світильники), а отримує список матеріалів за нормами виробників і готовий кошторис: роботи плюс матеріали дорівнює разом. Кошторис копіюється однією кнопкою і надсилається клієнту в месенджер.
За три дні інструмент виріс до версії з гіпсокартоном за технологічною картою виробника, електрикою по точках, чек-листом витратних матеріалів і кошторисом.
Помилки, які видно лише на живому телефоні
Найцікавіше: застрягло не на коді, а на особливостях реального користувача.
Кома замість крапки. Поле input type="number" мовчки не приймає кому, а на українській розкладці кома і є десятковим роздільником. Поле очищалось, а розрахунок видавав нескінченність.
Порожні випадні списки. У тега select немає значення за замовчуванням у тому сенсі, як очікуєш, і списки зберігалися порожніми.
Обидві помилки ловилися лише руками на справжньому телефоні. Автоматичні тести їх не бачили. Урок: якщо ваш інструмент використовуватимуть люди з телефона, тестуйте на телефоні, з тією клавіатурою, яка в них.
Найкращий тестувальник: незнайомий практик
Найсильніший крок у розвитку інструмента: віддати його незнайомому фахівцю. Електрик, якого автор ніколи не бачив, записав сім голосових повідомлень на п'ять хвилин з правками. Їх розшифрували локально і впровадили того ж дня:
- розпаювальні коробки, про які автор не подумав;
- спосіб з'єднання скруток, з реальним співвідношенням методів від практика;
- ціна роботи за квадратний метр замість ціни за точку.
А найбільше електрик хвалив блок «не забути взяти з собою», який додали останнім і майже викинули. Часто найцінніша функція для користувача та, яку розробник вважає дрібницею.
Бот-консультант розпитає про процеси і запропонує перший крок. Або напишіть мені напряму, обговоримо вашу задачу.
Чому без грошей і чому це нормально
Калькулятор роздається безкоштовно, і це свідомий вибір. Ним уже користуються кілька майстрів, а повернулося бартером: знижка на ремонт, дрова, продукти. Для інструмента, який зроблено за кілька вечорів, це чесний обмін.
Що з цього взяти власнику
Цей приклад показує кілька речей, корисних для будь-якого малого бізнесу:
- Внутрішній інструмент не мусить бути складним. Якщо ваші працівники щодня рахують щось вручну, один HTML-файл може зекономити години на тиждень.
- Офлайн важливий. На об'єкті часто немає зв'язку. Інструмент, який працює без мережі, використовуватимуть.
- Кошторис для клієнта це продаж. Охайний кошторис за хвилину на місці виглядає професійніше за аркуш, і клієнт погоджується швидше.
- Голосові відгуки працюють. Практикам легше надиктувати, ніж писати. AI розшифрує і структурує.
Чому офлайн і чому без реєстрації
Майстер рахує матеріали на об'єкті, де часто немає зв'язку: підвал, новобудова, ремонт на верхньому поверсі без вікон. Тому калькулятор має працювати як застосунок на телефоні без інтернету. Технологія PWA дозволяє це зробити без публікації в сторах: людина відкриває посилання, додає іконку на головний екран, і далі все працює локально.
Реєстрацію я теж прибираю з першої версії. Кожен додатковий крок до першого розрахунку зменшує кількість людей, які дійдуть до результату. Якщо інструмент виявиться корисним, облік клієнтів і синхронізацію між пристроями можна додати пізніше. Той самий принцип я застосовую для внутрішніх інструментів компаній: спочатку одна задача, яку людина вирішує за хвилину, потім усе інше.
Читайте також: Мобільний застосунок для магазину: етапи і бюджет, CRM для домашнього виробництва з вітриною в Telegram і Нагадування про терміни документів у Telegram.
Коротко
- Простий калькулятор на одному HTML-файлі реально зібрати за вечір з Claude Code.
- Тестуйте на справжньому телефоні з реальною клавіатурою.
- Віддайте інструмент незнайомому практику, його правки найцінніші.
- Охайний кошторис за хвилину допомагає продавати.
Ваша команда щодня рахує щось вручну? Розкажіть про це боту-консультанту, або напишіть мені в Telegram, зберемо інструмент під ваш процес.
Що саме я роблю для компаній, описано в розділі послуги.
Бот-консультант розпитає про процеси і запропонує перший крок. Або напишіть мені напряму, обговоримо вашу задачу.