Switch to English?
Yes
Переключитись на українську?
Так
Переключиться на русскую?
Да
Przełączyć się na polską?
Tak
SaaS-платформа для ресторанного бізнесу на ринку Ізраїлю.

Продукт мав закривати дві частини: інтерфейс для клієнтів ресторану та внутрішню систему для персоналу. Клієнти могли бронювати столик, робити замовлення та оплачувати його, а менеджери, офіціанти, супервайзери й адміністратори — керувати рестораном, співробітниками, замовленнями, інвентарем і запасами.

Замовник прийшов із готовим дизайном у Figma та попередньою оцінкою строків від інших розробників. Моєю задачею було повністю реалізувати frontend-частину продукту з нуля та довести її до робочого MVP.

=== МОЯ ЗАДАЧА ===

Розробити frontend-архітектуру SaaS-продукту та реалізувати повну клієнтську частину веб-додатку на React і TypeScript: від базової структури проєкту до складної бізнес-логіки, real-time функціоналу, ролей користувачів, доступів за підписками та адаптивних інтерфейсів.

=== ЩО БУЛО ЗРОБЛЕНО ===

• спроєктував архітектуру всієї frontend-частини додатка;
• реалізував інтерфейс для клієнтів ресторану: бронювання столика, створення замовлення, перегляд меню та оплата;
• реалізував інтерфейси для персоналу ресторану: менеджерів, офіціантів, супервайзерів та адміністраторів;
• реалізував real-time відстеження замовлень, інвентарю і запасів через WebSockets;
• побудував логіку доступу до функцій залежно від ролі користувача та тарифного плану підписки;
• реалізував subdomain-based логіку для ресторанів, щоб різні ресторани могли працювати через власні піддомени;
• реалізував весь UI з дизайн-системою Ant Design та TailwindCSS;
• відповідав за продуктивність, доступність, безпеку та якість frontend-коду;
• допомагав junior-розробнику: делегував задачі, проводив code review і пояснював підходи до реалізації.

=== ОСОБЛИВОСТІ ПРОЕКТУ ===

Головна складність проекту була не в окремих екранах, а в бізнес-логіці продукту.
Потрібно було реалізувати multi-tenant архітектуру, де кожен ресторан має свою логіку, свої дані та власний піддомен, але при цьому вся система працює як єдиний SaaS-продукт.
Окремо складною частиною була система доступів. У продукті потрібно було враховувати не тільки ролі користувачів — manager, supervisor, waiter, admin, — а й тарифний план ресторану. Наприклад, частина функцій могла бути доступна тільки для певної підписки: додавання співробітників, real-time inventory tracking, розширена аналітика та інші можливості.

Ще одна важлива задача — реалізація оплати в умовах cross-domain flow. Кошик формувався на піддомені ресторану, а оплата проходила через основний домен. Для цього потрібно було безпечно передавати дані між різними доменами, не ламаючи користувацький сценарій.

Також проект мав обмеження по строках. Потрібно було швидко визначати пріоритети для MVP та не нехтувати архітектурними рішеннями для подальшого масштабування проекту..

=== РЕЗУЛЬТАТ ===

Клієнт отримав повністю робочий MVP SaaS-платформи для ресторанного бізнесу.
Frontend-частина була реалізована з нуля: з адаптивними інтерфейсами для клієнтів і персоналу, real-time оновленням замовлень, системою ролей, обмеженнями за підписками, subdomain-based логікою для ресторанів і складним сценарієм оплати між доменами.
Проект був доведений до робочого MVP у стислі строки, попри зміну вимог і складнішу реальну логіку, ніж було закладено в початковій оцінці.

=== ТЕХНОЛОГІЇ ===

React.js, TypeScript, Redux Toolkit, RTK Query, Ant Design, TailwindCSS, WebSockets, pusher.js, laravel-echo, window.postMessage()


#React #TypeScript #FrontendDevelopment #SaaS #MVP #ReduxToolkit #RTKQuery #AntDesign #TailwindCSS #WebSockets #FrontendArchitecture #MultiTenant #Subdomains #AccessControl #RestaurantSaaS #RestaurantManagement #WebApp #JavaScript
Деталі роботи
Додано 2 червня
44 перегляди
Фрилансер
Руслан Растегаєв
Україна Харків
Немає відгуків

Вільний для роботи Вільний для роботи
На сервісі 7 років