Graduation project · Full-stack marketplace

SmartStay AI Palestine

A bilingual accommodation marketplace built around Palestinian stays, with separate customer, property-owner, and administrator journeys and a database-level answer to double booking.

Project typeGraduation project
My roleFull-stack developer within the graduation-project team
OwnershipTeam graduation project
DeploymentPublic full-stack deployment
SmartStay AI Palestine interface

The problem and my contribution.

Local accommodation discovery is fragmented across social pages and messages. Guests cannot reliably verify availability, while hosts need professional listings, inventory control, and a clear approval workflow.

My roleFull-stack developer within the graduation-project team
OwnershipTeam graduation project

I contributed across the product stack: bilingual responsive interfaces, customer and owner flows, server routes, relational data, secure sessions, and booking-conflict protection. The portfolio describes the work as a team project and does not claim sole authorship.

How the product is put together.

01

Interface

Bilingual pages and role dashboards

02

API

Auth, properties, uploads, bookings

03

Data

D1 relational model and unique slots

04

Storage

D1-backed property media

Technology choices

TECH

Next.js + TypeScript

One typed codebase for public pages, dashboards, and route handlers.

TECH

Cloudflare D1 + Drizzle

Relational ownership and booking data with explicit schema and migrations.

TECH

Cloudflare Workers

The complete Next.js application runs publicly at the edge with its server routes and role-aware workflows.

TECH

Local AI

Useful trip-planning assistance without making the core booking flow depend on a paid API.

Challenges and decisions.

Double booking

Availability checks alone can race. Each booked time becomes a unique database slot; a collision returns HTTP 409 and the incomplete booking is removed.

Three user roles

Customer, owner, and admin queries are scoped on the server, including ownership checks before property changes.

Arabic and English

Language and direction switch together, including navigation, forms, dashboards, and mobile layouts.

Real screens, not mockups.

Quality you can verify.

4automated suites
66product screenshots
3role portals
CIbuild verified
  • GitHub Actions runs lint, production build, and automated tests.
  • Docker provides a reproducible local environment; deployment bindings stay outside source control.
  • Architecture and authorization documents explain the schema, sessions, roles, uploads, and booking constraints.

Try the protected workflows.

RoleEmailPassword
Guestguest@smartstay.psGuest123!
Ownerowner@smartstay.psOwner123!
Adminadmin@smartstay.psAdmin123!

Demo credentials are public. Do not upload private data or reuse these passwords.

SmartStay AI Palestine

Want to inspect the implementation?