Finca Garmendi
A restored farmhouse in Orendain, facing the Aralar range, that hosts weddings. Its site lived on Wix, only in Spanish. JZ Forge rebuilt it in Next.js, in four languages, with a Payload panel where the venue changes texts and photos and sees the result before saving.
- Client project
- 2026
- Web
- Role: everything
- Status: live at fincagarmendi.com



Finca Garmendi is a family farmhouse in Orendain, Gipuzkoa, restored to host weddings and events: ceremony and cocktail on the lawn, a dining room with a large window facing Aralar and the Txindoki, and cider made on the farm. Everything a couple needs to decide is visual, so the site has to carry the place.
The venue had a Wix site on the free plan, never published on its own domain and only in Spanish. A Basque venue talks to couples in Basque and Spanish, and to guests from France and further away in French and English, so the new site had to speak all four.
Four languages without four websites to maintain. Each one needs its own address so search engines index it, and a text changed in Spanish must not silently leave the Basque page out of date.
The owners' time goes to the venue, not to the website. They had to be able to change a text or a photo on their own, without a monthly CMS subscription and without servers to look after. And the contact form is where the business starts: a message that gets lost is a wedding that does not happen.
Six pages in the brand the venue already had, the leaf wreath logo, deep green and copper, a serif for headings: home over the drone video, about, services and spaces with a Matterport virtual tour, a gallery with categories, their own cider and contact. Every language lives at its own URL, with a selector in the header, hreflang and a multilingual sitemap.
The venue edits the site at /admin, a Payload panel inside the same Next.js app: every text in every language, the gallery and the page photos, with a live preview of the site next to the form. Saving regenerates the affected pages, so the site stays static and the change shows in seconds, without a deploy. The contact form is validated on the server and sent to the venue by email, with the couple as the reply address, and then offers a WhatsApp button with the message already written.
Everything. The proposal, the design on top of the existing identity, the migration of every text, photo and video out of Wix, the translations, the Next.js app, the Payload panel, the contact form and its email, SEO, legal pages in four languages, the launch on the venue's domain, the account setup and the data processing agreement with the venue.
Key decisions, and why:
- The panel lives inside the site. Payload runs in the same Next.js app, at /admin, with its interface in Spanish and the venue's logo. Each page is a Payload global whose fields have the same names as the keys the site already used, so the pages barely changed. The owners get an editor profile and JZ Forge keeps the admin one.
- A database for the content, nothing else. Texts, photos and panel users live in SQLite: a local file in development and Turso in production, with the same adapter. Photos go to Vercel Blob, because the disk on Vercel does not persist. The contact form still sends an email and keeps nothing, so no couple's data is stored.
- Never a half-translated page. Every field has a version per language. If one is missing, the site shows the Spanish text, and every text is required, so an edit can never leave a hole. In the interface texts Spanish still defines the shape: a key missing in another language fails the build.
- The venue owns what matters. The domain and the mailbox are in the venue's name. Hosting, photos, database and email delivery run on JZ Forge accounts as part of maintenance, under a data processing agreement with a clause to transfer them at no cost.
- Getting out of Wix. Wix has no clean export. Every text of the six pages, the 49 files of the media library and the six original videos were pulled out one by one, a contact sheet was made to choose the photos, and the images went from 192 MB to 13 MB. One photo turned out to be from a newspaper and stayed out.
- From files to a database before launch. The site started with a Git-based editor and moved to Payload before going live. The content in four languages was loaded once, through a migration that runs in the Vercel build, and the old Wix addresses redirect to their new pages so no link or search result is lost.
- Motion without a library. The home title enters letter by letter over the video, photos reveal like a curtain, sections rise on scroll and pages cross-fade with View Transitions. All of it is CSS and one client component, and it switches off when the visitor asks for reduced motion or has no JavaScript.
A site in four languages: six pages, the gallery, the virtual tour, the contact form with email and WhatsApp, the panel for the venue, SEO, share images and the legal pages, plus a guide for the owners on how to use the panel.
It went live in October 2026 at fincagarmendi.com, on the venue's own domain, with the old Wix addresses pointing to their new pages.
- For a small business, the editor is the product. What the venue asked for was not a CMS; it was changing a photo on a Sunday on their own. A panel inside the site, with a live preview next to the form, gives them exactly that.
- Store only what you need. The panel stores texts and photos; the contact form sends the email and keeps nothing. That keeps the legal pages short and the client's risk low.
- A language is not a toggle. Each language is edited on its own, not machine-translated on the fly. That is more work for the venue, and it is what makes the Basque and French pages read as if they were written for the people who read them.