MovieHouse
У продіFull-stack застосунок для пошуку фільмів на основі TMDB API — з пошуком, фільтрами та серверним рендерингом.

Стек
- Node.js
- Express.js
- EJS
- Tailwind CSS v4
- Zod
- TMDB API
Задача
Практичний проєкт курсу з full-stack веброзробки, зі свідомо "дорослим" технічним завданням: застосунок для пошуку фільмів, який відчувається як готовий продукт, а не навчальна CRUD-вправа — швидкий пошук, змістовна фільтрація й деталі, які варто читати, і все це поверх стороннього API з власними лімітами й особливостями.
Підхід
Соло-розробка, backend-first: Express віддає серверно-рендерені EJS-сторінки, а окремий сервісний шар інкапсулює звернення до TMDB API — решта застосунку з ним напряму не спілкується. Кожен користувацький ввід — пошуковий запит, фільтри, пагінація — валідується через Zod, перш ніж дійти до цього шару.
Ключові рішення
- –Кешування відповідей TMDB на 5 хвилин (node-cache) — повторні пошуки й списки популярного не б'ють по зовнішньому API щоразу.
- –Rate limiting і security-заголовки Helmet — застосунок коректно поводиться під навантаженням і має розумний захист за замовчуванням.
- –Розширена фільтрація (жанр, рік, рейтинг, сортування), горизонтальні карусельні слайдери популярного/топового, і прямі посилання на стрімінгові сервіси.
- –Кастомні сторінки 404/500 і санітизовані повідомлення про помилки в проді — без витоку stack trace.
Результат
Задеплоєно на Render, працює як публічне демо. Пункти на майбутнє — TV-шоу, сторінки жанрів, списки перегляду — відкрито зазначені в roadmap репозиторію.