René Cano
All projects

No. 10

Anfitrión

Tools for a hotel website studio

My role
Studio partner · CRM and site generator
Period
Aug 2026
Private repository

The problem

With a partner I started Anfitrión, a studio that builds websites for hotels. To run it we needed three things: a way to follow up on every lead, a way to produce sites quickly without rewriting HTML for each client, and demos to show.

What I built

All three pieces date from August 2026.

  • The internal CRM (Next.js and Supabase). A deals table with 5 stages, from lead to closed won or lost, and 4 plans; a drag-and-drop Kanban board, a searchable and filterable table, and a dashboard with charts. Row Level Security only lets authenticated users read and write, and accounts are created by hand: there's no public sign-up.
  • The site generator. One HTML template and one JSON file per hotel. A script pulls location, rating and reviews from Google Places (the API returns up to 5 and the script keeps the best 3, unedited), and another builds the static site, ready to upload to Netlify. It includes 5 AI prompts for content, SEO, translation and FAQs.
  • The demo landing pages, which we build together: Next.js with static export, Spanish and English, and an availability request through WhatsApp, with no backend. In that repository I made 6 of the 21 commits (the generic demo with fictional data and one landing page); my partner did the rest.

Architecture

Diagram of the three pieces: the internal Next.js CRM stores deals in Supabase with RLS and shows them in a 5-stage Kanban board, a table and charts; the site generator takes one JSON file per hotel, filled in with location, rating and reviews from Google Places, and produces a static site from a single template; the generated sites and the bilingual demo landing pages with WhatsApp contact are published on Netlify. I built the CRM and the generator; my partner and I built the landing pages together.

Results

I have no business metrics to publish. What can be checked is the code: the CRM schema and policies, the generator and the landing pages.

Known limits

  • The repositories are private, so this page doesn't link to the code.
  • RLS protects against unauthenticated users but gives any authenticated account full access. That works while only our accounts exist; with more users it needs per-user policies.
  • None of the three pieces has tests.

Links

The repositories are private and there are no public links yet.