Skip to content
SoyGarfield
Case study

Pietro Fiorillo × QBO Imagen Corporativa

A headless corporate site with Sanity CMS and Next.js, exported as a static site and served from Firebase Hosting.

View project Headless corporate site with a self-service CMSLive
Client
QBO Imagen Corporativa
Type
Headless corporate site with a self-service CMS
Role
Design, full-stack development, headless architecture and SEO/GEO.
Status
Live

01The challenge#

QBO Imagen, a creative studio for graphic design, signage and applied marketing in Neuquén, needed a site its own team could update without depending on a developer, that loaded fast across the whole country for remote clients from one end of Argentina to the other, and that competed for visibility not only on Google but also on the new AI search engines (ChatGPT, Perplexity, Google AI Overviews), with a contact system that turned visits into real conversations without the friction of a traditional form.

02The solution#

  1. 01A JAMstack architecture: content lives in Sanity Studio (headless CMS), Next.js fetches it at build time via GROQ, and the result ships as a static export (output: export) on Firebase Hosting, with no Node server in production.
  2. 02A dynamic portfolio filterable by category (graphic design, signage, marketing, vehicle wraps, video and workwear), with control from the CMS itself over which pieces are featured in the hero.
  3. 035 independent service landing pages, statically generated (generateStaticParams), each with its own SEO, features and FAQs, 100% editable without touching code.
  4. 04A fallback first pattern: every component that depends on Sanity (Hero, Portfolio, Testimonials, Footer) carries its own embedded backup content, so the site never breaks from missing content or a CMS outage.
  5. 05Friction free contact: forms build the message and open it directly in the client's WhatsApp, with no custom backend to maintain.
  6. 06SEO and GEO from day one: structured data (Organization, WebSite, LocalBusiness), an automatic sitemap and a robots.txt that explicitly allows AI crawlers (GPTBot, ClaudeBot, PerplexityBot, Google Extended, among others) while blocking aggressive scrapers.

03How it is built#

  1. Sanity Studio: the client edits content
  2. Build: Next.js fetches via GROQ at build time
  3. Static export (output: export)
  4. Firebase Hosting (CDN)

04Stack#

  • Next.js
  • React
  • TypeScript
  • Tailwind CSS
  • Sanity
  • Framer Motion
  • Firebase Hosting

05Why it works#

  • The headless architecture separates content from code: the client edits portfolio, services, testimonials and FAQs from Sanity Studio without asking for technical help on every change.
  • The static export removes the Node server from production: zero server-side vulnerabilities and near-instant load from the CDN.
  • The fallback first pattern keeps the site from breaking if the CMS is down or a build runs without Sanity's environment variables configured.
  • A deliberate simplicity choice: with no automatic CI/CD, every content update ships with a manual build and deploy, favoring a system that is simple to maintain over automation this stage of the project does not need yet.

06Outcome#

  • A site that is 100% editable without touching code: portfolio, services, testimonials and FAQs update from Sanity Studio.
  • 50 portfolio pieces loaded, 39 actively featured on the home, organized into 6 categories.
  • 5 independent service landing pages, each indexable with its own SEO.
  • Indexable by ChatGPT, Claude, Perplexity and Google AI Overviews from launch, thanks to the robots.txt and structured data.

Results and figures published by MANYA Digital for this project.

Want a project like this?

If you need a website, an application or a system for your business, let's talk.

Get in touch