Завдання
RYVIA 3D задумувався не як демонстраційна сторінка, а як робочий сервіс для замовлень 3D-друку. Користувач має зареєструватися, підтвердити email, завантажити фотографії та 3D-моделі, отримати розрахунок, спілкуватися з продавцем і стежити за статусом замовлення.
Архітектура
Проєкт отримав Node.js backend, PostgreSQL і приватне файлове сховище. Інтерфейс працює як єдиний застосунок з особистим кабінетом клієнта та адміністративною частиною.
- Render — запуск backend;
- Neon PostgreSQL — база даних;
- Cloudflare R2 — приватні файли замовлень;
- ClamAV — перевірка завантажуваних файлів;
- Resend — листи підтвердження та відновлення доступу.
Безпека та файли
Файли замовлень не можна було просто покласти у публічну папку. Для них використовується приватне сховище, серверна перевірка типу файлу та антивірусне сканування. Для адміністративного доступу додано MFA.
Фінальний етап
Після функціональних тестів проєкт отримав адаптацію під телефони, домен з HTTPS, email-доставку та SEO-налаштування. Окремо протестовано реєстрацію, замовлення з файлами, кабінет та адміністративний сценарій.
Що показує цей кейс
RYVIA 3D став для KAMERTON прикладом проєкту, де frontend — лише частина роботи. Реальний веб-сервіс потребує бази даних, зберігання файлів, безпеки, інтеграцій, деплою та тестування.
Потрібен схожий веб-сервіс?
Обговоримо завдання, функціональність і підхід до реалізації.
Читати розбір проєкту →