Перейти до вмісту

Inksquad

Екосистема для татуювань

2024 - now · CTO, продуктова та платформна архітектура

Кросплатформна екосистема для татуювань — споживацький застосунок на React Native, нативний для iPad професійний інструмент на SwiftUI та спільна платформа на Supabase і AI, що веде ідеї від натхнення до придатного творчого матеріалу.

Inksquad: кросплатформна продуктова система для створення татуювань

Inksquad — це не один застосунок. Це повноцінна продуктова екосистема, побудована навколо однієї ідеї: допомогти концепціям татуювань пройти шлях від розпливчастого натхнення до точного, придатного до використання творчого матеріалу. Платформа об’єднує дві аудиторії — любителів татуювань і професійних митців — через спільну технічну основу, що складається з мобільних застосунків, нативного для iPad професійного інструмента, веб-CMS, панелі адміністрування, інфраструктури Supabase та операцій із зображеннями на базі AI.

Споживацький застосунок Inksquad People публічно позиціонується як спосіб «Define your next Tattoo like never before.» Його мета — не запис на сеанс. Це підготовка. Користувачі можуть створювати приватні проєкти татуювань, писати детальні описи, обирати бажані стилі та розташування на тілі, задавати розмір, збирати референсні зображення, генерувати візуали за допомогою AI і ділитися готовим проєктом із татуювальником, коли ідея визріла.

Технічно People — це застосунок на Expo 55 та React Native 0.84, що працює на React 19, Expo Router, HeroUI Native, FlashList, TanStack Query, покупках RevenueCat, Supabase Auth, Supabase Storage та Supabase Edge Functions. Застосунок включає вхід через Apple і Google, багатомовний онбординг, обробку push-сповіщень, завантаження даних із урахуванням офлайн-режиму, обмін проєктами через підписані токени, приватний доступ до зображень та AI Studio на основі тредів. Робочі процеси AI зберігаються як ai_threads і ai_thread_messages, із вихідними зображеннями, згенерованими зображеннями, метаданими операцій, обліком кредитів і діями на кшталт генерації татуювань, редагування зображень, видалення фону, альтернатив, апскейлінгу, примірки та створення проєктів.

Професійним відповідником є Inksquad Artist, публічно описаний як «Pro tools for pro Tattoo Artists.» Це SwiftUI-застосунок, орієнтований насамперед на iPad, створений із використанням Swift, SwiftData, CloudKit, PencilKit, Speech, AVFoundation, CoreImage, Vision, Supabase Swift, Google Sign-In, Firebase Messaging, Nuke, DotLottie, PINCache, ColorKit та спільного Swift-пакета під назвою InksquadShared. Він дає митцям робоче середовище для імпорту ескізів з таких інструментів, як Procreate, Photoshop чи Illustrator, генерації концепцій за допомогою AI, створення інкбордів, підбору кольорів, побудови палітр і керування живими сеансами.

Найвиразніші системи застосунку Artist водночас технічні та практичні. Модуль автоматичного трафарету використовує попередню обробку зображень, виявлення меж, векторизацію VTracer і генерацію шарів PencilKit, щоб перетворити малюнок на редаговані шари трафарету. Підбір кольору дозволяє митцям перетягувати маркери на зображення та знаходити збіги чорнила з глобальних каталогів, використовуючи перцептивні порівняння кольорів, такі як CIE94 і CIEDE2000. Інструменти Matrix і Color Wheel підтримують дослідження палітр, змішування чорнила та тонке налаштування з використанням основних кольорів плюс чорного й білого. Живий режим додає голосові команди для масштабування, відображення маркерів, відкриття шарів трафарету, керування таймером і перемикання видів зображення, не торкаючись iPad під час сеансу.

За обома застосунками стоїть спільна архітектура платформи. Монорепозиторій використовує Turborepo і pnpm, де packages/ui містить кросплатформні UI-компоненти, дизайн-токени, ефекти скла, елементи керування чатом, галереї, картки, модальні вікна, адміністративні компоненти та нативні/веб-варіанти. Бізнес-логіка міститься в packages/di, де централізовано композабли Supabase, згенеровані типи бази даних, i18n, провайдери запитів, логіку проєктів, логіку AI-тредів, платежі, конфігурацію застосунку та реєстрацію пристроїв.

Бекенд — це Supabase: Postgres з RLS, Storage, Auth, міграції, згенеровані типи TypeScript та Deno Edge Functions. Операції AI забезпечуються Vercel AI SDK з реєстром моделей, що охоплює OpenAI, xAI/Grok, Replicate і Google Vertex. Серверні інструменти обробляють генерацію, редагування, видалення фону, апскейлінг, альтернативи, примірку, аналіз контенту, покращення промптів, розрахунок вартості та журнали аудиту операцій.

Панель адміністрування на Next.js 16 завершує систему. Побудована на HeroUI, Tailwind CSS v4, Recharts і спільних DI-хуках, вона керує користувачами, митцями, студіями, подіями, стилями татуювань, частинами тіла, статтями, відгуками, покупками, ціноутворенням AI, посиланнями на застосунки, версіями застосунків і каталогами чорнила. Публічний сайт також зроблений на Next.js з Payload CMS, локалізованими глобальними налаштуваннями, медіа Vercel Blob, SEO-метаданими, JSON-LD і маркетинговими сторінками для People та Artist.

У результаті виходить платформа, де продукт, AI, інструменти дизайну, редакційний контент, комерція та операційний контроль інтегровані, а не нашвидкуруч з’єднані. Inksquad перетворює планування татуювання на структуровані творчі дані, а потім дає митцям професійні інструменти для перетворення цих даних на роботу, яку вони можуть використати.

Галерея