React/Supabase Developer Ai Travel Concierge platform & Marketplace for Curaçao
Worldwide
TITLE: React / Supabase Developer — AI Travel Concierge Platform for Curaçao (Brisa) ──────────────────────────────── OVERVIEW ──────────────────────────────── I am building Brisa — a hyper-local AI travel concierge platform for tourists visiting Curaçao. The frontend is built in Lovable (React / TypeScript / Tailwind) and is largely complete. I need an experienced developer to wire the full backend, connect the key APIs, and get the platform production-ready. This is a real product with real operators already onboarded and a target launch of August 2026. I am open to a reasonable extension if the quality justifies it — but August is the goal. ──────────────────────────────── WHAT BRISA IS ──────────────────────────────── Brisa is a conversational AI travel guide that helps tourists discover, plan, and explore authentic local experiences in Curaçao. Tourists interact with an AI concierge that recommends restaurants, tours, hidden gems, and builds personalized itineraries. Operators manage their listings, calendar, and bookings through a dedicated dashboard. The platform also includes: - A referral and QR code program (ambassadors, influencers, local partners) - A Brisa Plus subscription with tiered feature gating - A simple influencer/creator earnings dashboard - An operator backoffice for internal management ──────────────────────────────── DESIGN DIRECTION ──────────────────────────────── The design should feel like a blend of GetYourGuide and Layla.ai — GetYourGuide for the clean, scannable listing experience (horizontal cards, slim filter chips, white backgrounds, clear typography hierarchy). Layla.ai for the AI concierge feel (conversational, smart, warm, modern). Branding is still being finalized by a design company. The developer does not need to apply final brand colors or logo — that comes in the final polish milestone once branding is delivered. Use a clean temporary palette for now. ──────────────────────────────── WHAT I NEED FROM YOU ──────────────────────────────── The Lovable frontend is mostly complete. Your job is everything underneath it. 1. DESIGN REFINEMENT Before backend work begins, a UI polish pass is needed: - Consistent spacing, typography, and layout across all pages - GetYourGuide-style horizontal listing cards throughout - Floating AI chat pill with smart scroll behavior (full → compact → micro circle as user scrolls) - Persistent navigation on every single page - Perfect mobile responsiveness — this is primarily a mobile product - Smooth page transitions and micro-animations - Clean white backgrounds, minimal glass effects 2. SUPABASE BACKEND - Full database schema for: users, operators, bookings, listings, reviews, saved items, moments, itineraries, referrals, subscriptions - Every table must include destination_id from day one (critical for future multi-destination expansion) - Supabase Auth (replace Lovable placeholder) - Row Level Security — operators see only their data, tourists see only theirs - Supabase Storage for image uploads 3. API INTEGRATIONS The following APIs need to be connected and tested: - Claude API or OpenAI API — AI concierge brain (discovery, recommendations, itinerary building — NOT required to process in-chat payments) - Bokun API — two-way tour booking sync (I already have an active Bokun account for my own tour business) - FareHarbor API — two-way tour booking sync - WhatsApp Business API — automated booking notifications to operators and tourists - Mapbox GL JS — custom branded map with category pins and live availability - Resend — all transactional emails (booking confirmations, operator notifications, welcome emails, weekly operator digest) - Booking.com Affiliate via Awin — accommodation widget - Airalo API — eSIM affiliate 4. REFERRAL AND QR CODE SYSTEM Every operator, hotel, taxi driver, or partner gets a unique shareable link and a unique QR code. When someone signs up or purchases Brisa Plus through that link or QR scan — the referrer earns commission. Commission structure (for developer to build into the tracking logic): Local ambassadors (taxi drivers, hotel staff, beach vendors): 20-30% per Brisa Plus subscription value Influencer partners: 35% per subscription Elite Partners (100k+ followers): 40% per subscription Commission is on the subscription value only — not on booking commissions. Tracked automatically. Paid monthly. The system needs to track: - Who referred - When they converted - What they earned - When payout is due 5. BRISA PLUS TIER GATING Six configurable subscription tiers with trip-duration logic: Weekend: $6.99 Short Trip: $9.99 Week: $13.99 Extended: $17.99 Monthly: $24.99 Brisa Elite: $29.99 Free tier: Basic discovery only Plus tier: Full AI concierge depth, proactive notifications, deep hidden gems, personality selector, group itinerary builder Subscription management will run through Stripe Billing. Stripe is being set up separately and will be provided to the developer when ready — please build with Stripe as a placeholder from day one but full Stripe wiring is a later milestone once credentials are available. ──────────────────────────────── MILESTONES AND PAYMENT ──────────────────────────────── Fixed price project with milestones. Each milestone requires my review and approval before payment releases via Upwork escrow. 6. OPERATOR PLATFORM This is a full self-serve operator portal — similar to how operators manage their listings on GetYourGuide, Viator, or Klook. A local tour operator or experience provider should be able to: ONBOARDING: - Apply to join Brisa through a multi-step application form - Submit business details, experience descriptions, photos, safety certifications, and pricing - Application goes through a quality scorecard review (100-point system) before being approved - Receive specific feedback if not approved — not a hard rejection - Resubmit after improvements LISTING MANAGEMENT: - Create and manage their own experiences/tours fully independently — no Brisa team involvement needed - Add title, description, photos, videos, duration, meeting point, pricing, group sizes, inclusions, exclusions, difficulty level, languages offered - AI writing assistant built into the listing editor that suggests improvements as they type - Live preview showing exactly how their listing appears to tourists - Set seasonal pricing rules and group discounts - Pause or reactivate listings independently - Upload and reorder photos with drag and drop - Manage multiple listings from one account CALENDAR AND AVAILABILITY: - Full calendar management — open slots, block dates, set recurring schedules - Two-way sync with Bokun and FareHarbor so availability is always accurate across all platforms — no double bookings - Add specific time slots with custom capacity per slot - Block vacation dates or maintenance periods - Print daily pickup schedules for drivers - Conflict warnings if overbooking risk detected BOOKINGS MANAGEMENT: - See all incoming bookings in real time - Customer details (name, group size, special requests, language) - Booking confirmation, cancellation, and refund controls - In-platform messaging with tourists about their booking - Content restrictions in the messaging system — operators cannot share external booking links or personal phone numbers through the platform (automatically blocked) ANALYTICS DASHBOARD: - Revenue over time - Bookings per listing - Guest nationality breakdown - Capacity utilization - View-to-booking conversion rate - Where bookings come from (AI recommendation, search, map, browse) - Plain language AI insights — e.g. "Your Tuesday 3pm slot has been empty 6 weeks. Consider removing it." or "Canadian tourists book your tour 40% more than average." REVIEWS: - See all tourist reviews per listing - Respond to reviews publicly - Sentiment analysis summary - Rating trend over time PAYOUTS: - See upcoming and completed payouts - Transaction history per booking - Gross amount, Brisa commission, and net payout clearly shown - Connected to Stripe (placeholder now, full wiring later) The goal is that a local Curaçao boat tour operator can sign up, list their Klein Curaçao day trip, set their availability, and start receiving bookings — without any involvement from the Brisa team. Fully self-serve. Exactly like GetYourGuide or Viator's operator portal but built specifically for the Curaçao market. ──────────────────────────────── 7. BACKOFFICE DASHBOARD ──────────────────────────────── Internal Brisa team dashboard for managing the entire platform: - Operator application queue with review and approval workflow - Quality scorecard per applicant - Approve / Request Improvement / Decline with templated feedback - All operators list with performance metrics - All bookings across platform with filter and search - All customers with booking history - Refund request queue with approve/deny controls - Content moderation queue for user-generated posts - Commission and payout management for all operators - Platform-wide revenue and analytics overview - Discount code creation and management - Featured placement management (operators who pay for boosted visibility) - Destination management (Curaçao active, Aruba and Bonaire ready to activate later) Different internal roles see different views: - Owner: everything - Operations Manager: operators, customers, moderation, support - Finance Admin: payouts, commissions, accounting exports ──────────────────────────────── 8. INFLUENCER AND AMBASSADOR DASHBOARD ──────────────────────────────── A lightweight self-serve portal for Brisa's referral partners — content creators, local ambassadors, taxi drivers, hotel staff. This is intentionally simple. Not a complex CMS. Just the essentials a partner needs to promote Brisa and track what they earn. After approval they can log in and see: THEIR UNIQUE ASSETS: - Their personal referral link (e.g. brisa.app/ref/sarah) - Their unique discount code (e.g. SARAH20 — 20% off Brisa Plus for their audience) - QR code generated from their unique link (downloadable as image for printing or sharing) - Copy buttons for all assets EARNINGS OVERVIEW: - Total earned lifetime - This month's earnings - Pending payout amount - Available to withdraw - Next scheduled payout date CONVERSION TRACKING: - Total clicks on their link - Total signups generated - Total Plus subscriptions via their link - Conversion rate at each step PAYOUT HISTORY: - Full transaction history - Amount per payout - Date processed TIER STATUS: - Their current tier (Ambassador / Partner / Elite) - Commission rate for their tier - Progress toward next tier Commission structure: Local ambassadors (taxi drivers, hotel staff, vendors, local businesses): 20-30% of Brisa Plus subscription value Influencer Partners (1k-100k followers): 35% of subscription value Elite Partners (100k+ followers): 40% of subscription value Commission applies to subscription value only — not on booking commissions. Calculated automatically. Paid monthly. LOCAL AMBASSADOR VARIANT: For taxi drivers and hotel staff a simplified mobile-friendly version of the same dashboard — larger text, minimal UI, shows only their earnings, their QR code, and a WhatsApp support button. These users are not tech-savvy creators — the interface must be immediately understandable with zero learning curve. 9. PRODUCTION DEPLOYMENT - Vercel deployment with custom domain - Environment variables secured properly - Sentry error monitoring - PostHog or Mixpanel for analytics - PWA setup — tourists can install Brisa to phone home screen - Core Web Vitals passing - Performance optimization ──────────────────────────────── WHAT I AM SPECIFICALLY LOOKING FOR ──────────────────────────────── This role is different from a standard web developer. I need someone who has specifically built AI chatbot or AI travel concierge features before — not someone who has only done general React work. The AI concierge is Brisa's core differentiator and needs to be built by someone who understands conversational AI integration in a real product context. Beyond AI experience I need: - Proven React and Supabase experience specifically — not just general web development - Experience with multi-sided marketplace architecture (operator-facing and tourist-facing platforms) - Comfortable connecting multiple third-party APIs in one project - Daily English communication — written updates every day, I should never need to chase for a status update - Weekly milestone demos via video or screen share - Able to work independently without constant supervision - Has shipped a real product that real users use Please do not apply if you primarily work with PHP, WordPress, or jQuery. This is a modern React / TypeScript / Supabase project built in Lovable. Frontend: React, TypeScript, Tailwind CSS (Lovable) Database: Supabase Payments: Stripe (placeholder now, full wiring later) Hosting: Vercel Maps: Mapbox GL JS AI: Claude API or OpenAI API Booking sync: Bokun + FareHarbor Email: Resend Icons: Lucide React Error tracking: Sentry Analytics: PostHog Timeline: August 2026 target. Open to reasonable extension if quality justifies it. Generic proposals will be ignored. To be considered please answer these four questions specifically: 1. Have you built an AI chatbot or AI travel concierge before? Describe the project — what AI model, what features, what was the user experience. 2. Have you worked with Supabase Row Level Security in production? Give one specific example. 3. Have you built a two-sided marketplace with separate operator and customer dashboards? Describe it briefly. 4. Are you available to start within one week and commit to daily written updates? Applications that do not answer all four questions will not be considered. Add this to the end of the TO APPLY section: "Please include your proposed budget and timeline in your application. Break it down by phase or milestone if possible. Proposals without a budget estimate will not be considered."
- Less than 30 hrs/weekHourly
- 1-3 monthsDuration
- IntermediateExperience Level
- Remote Job
- Complex projectProject Type
Skills and Expertise
Activity on this job
- Proposals:20 to 50
- Last viewed by client:16 hours ago
- Hires:2
- Interviewing:1
- Invites sent:0
- Unanswered invites:0
About the client
- CUWWillemstad4:31 PM
- $1.5K total spent2 hires, 1 active
Explore similar jobs on Upwork
How it works
Create your free profileHighlight your skills and experience, show your portfolio, and set your ideal pay rate.
Work the way you wantApply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
Get paid securelyFrom contract to payment, we help you work safely and get paid securely.
About Upwork
- 4.9/5(Average rating of clients by professionals)
- G2 2021#1 freelance platform
- 49,000+Signed contract every week
- $2.3BFreelancers earned on Upwork in 2020
Find the best freelance jobs
Growing your career is as easy as creating a free profile and finding work like this that fits your skills.
Trusted by