TuniCyberLabs
Services
Products
About
Blog
Contact
TuniCyberLabs

Your technology partner for AI, cybersecurity, cloud, and infrastructure solutions. Helping businesses across Tunisia and beyond grow smarter.

Stay in the loop

Threat research and product notes, no spam, double opt-in.

Confirm your email using the link we send before your subscription starts.

Privacy notice

Services

  • ▸Custom Software Development
  • ▸AI Solutions
  • ▸Cybersecurity
  • ▸Cloud Services
  • ▸Hosting & Infrastructure

Industries

  • ▸Banking & Finance
  • ▸Healthcare
  • ▸Retail & E-Commerce
  • ▸Manufacturing

Company

  • ▸About Us
  • ▸Blog

Products

  • ▸All products
  • ▸TuniReach
  • ▸TuniRise
  • ▸TuniCall

Platform

  • ▸Contact

Contact

  • contact@tunicyberlabs.com
  • +216 99 800 151
  • Based in Sousse and Estonia.

Legal

  • ▸Privacy
  • ▸Terms
  • ▸Acceptable Use
  • ▸Responsible Disclosure

© 2026 TUNICYBERLABS // ALL_RIGHTS_RESERVED

Software Engineering
  1. Home
  2. /
  3. Blog
  4. /
  5. Inside nexaros.fr: A Garage Website With a Live Workshop Planning

Inside nexaros.fr: A Garage Website With a Live Workshop Planning

TuniCyberLabs Team
October 25, 2026
8 min read

Nexaros is the website of an all-makes garage in France. Its centrepiece is a live workshop planning that customers book in two minutes, backed by capacity rules, race-safe bookings, a back office and a chat assistant that calls no AI service.

In this article

  1. What nexaros.fr covers
  2. A planning is a promise about capacity
  3. Booking in two minutes, without an account and without double booking
  4. A back office a garage owner actually uses
  5. A chat assistant that calls no AI service
  6. Every public form goes through one front door
  7. Built to be found by search engines and answer engines
  8. The stack
  9. How TuniCyberLabs helps

Nexaros (nexaros.fr) is the website of an all-makes car garage in France: mechanics, servicing, tyres, brakes, air conditioning, electronic diagnostics, used car sales and trade-ins, and spare parts. The headline says it in five words: "Toutes marques. Une seule exigence.", all makes, one standard. TuniCyberLabs designed and built the site, and the part that does the most work is not the photography or the motion design. It is the planning: a live view of the workshop's free slots that a customer can book in two minutes.

What nexaros.fr covers

Nexaros is a French-language site for a garage that sells three things at once: workshop time, used cars and parts. Each one has its own path, and every path ends in the same back office, so nothing a customer sends can get lost between an inbox and a notebook.

  • ▸Eleven service pages: general mechanics, servicing and oil changes, electronic diagnostics, tyres, brakes, air conditioning, timing belts and clutches, pre-MOT checks, plus vehicle sales, purchase and trade-in, and spare parts.
  • ▸A live planning at nexaros.fr/planning, and a booking flow that can start from any service page.
  • ▸Request forms for selling a car, valuing a trade-in, ordering parts and general contact.
  • ▸Twenty-one workshop advice articles in French, from oil change intervals to winter tyre rules, with an RSS feed and a FAQ page.
  • ▸A chat assistant that answers questions and can book a slot.
  • ▸A back office at /admin, kept out of search engines, where the garage runs all of the above.

A planning is a promise about capacity

A garage does not really sell appointments, it sells bay time and mechanic hours. A planning is only useful if every free slot it shows is one the workshop can honour, so the slot engine resolves each day from explicit rules instead of a calendar that someone has to keep tidy.

  • ▸One resolution order per day: a special day set by the garage wins over a closure period, which wins over a public holiday, which wins over the weekly template. French public holidays are computed, including Easter Monday, Ascension and Whit Monday, which move every year, so nobody has to look them up.
  • ▸Slots have a length and a capacity, thirty minutes and two cars by default, both editable. A booking horizon (four weeks by default) and a minimum notice (two hours by default) stop a customer from booking a slot that starts while they are still parking.
  • ▸Five honest states: available, limited (one place left out of several), full, blocked by the garage, or past. A customer sees at a glance where the week is open.
  • ▸One engine in two places: the slot rules are pure functions, so the same code computes the public planning on the server and previews changes in the back office editor in the browser. What the garage sees while it edits its hours is exactly what customers will see after saving.

Capacity is the same problem in every booking business, whether the unit is a car lift or a seat on a tour: Kelowna Experience Bookings: The Last Seat Cannot Be Sold Twice.

Booking in two minutes, without an account and without double booking

The booking flow asks for four things: the reason for the visit, a free slot, the vehicle and a way to reach the customer. There is no account to create. The hard moment is not the form, it is two customers reaching for the last place in the same slot at the same time.

  • ▸A request holds the place. As soon as it is sent, the slot counts it, and the place stays held until the workshop confirms or declines. The customer's receipt says exactly that: requested and held, not confirmed.
  • ▸Check and write happen together. Writes to the store run one after another, and the "is this slot still free" check runs inside the write. The second request for the last place gets a clear answer that the slot was just taken, with a refreshed planning, instead of an overbooked Saturday morning.
  • ▸The planning refreshes after every booking, because its cache is invalidated by the booking itself rather than by a timer.
  • ▸Two emails, two audiences. The workshop gets the full request with the reply address set to the customer, and the customer gets a receipt in plain French.
  • ▸Nothing private leaves the server. The public planning only ever exposes slot states and counts, never who booked what. That matters on a page anyone can open, and it is the kind of privacy by default that GDPR expects: GDPR Compliance for SaaS Startups: A Practical 2026 Guide.

A back office a garage owner actually uses

A booking system only stays accurate if changing it takes less effort than ignoring it. The Nexaros back office covers what a garage changes from week to week, and every change reaches the whole site at once.

  • ▸Hours and capacity: weekly opening hours, slot length and places per slot.
  • ▸Exceptions: closure periods for holidays, special days with different hours, and blocked slots for the morning a lift is out of service.
  • ▸Bookings: confirm or cancel each request, with an optional email to the customer.
  • ▸Messages: every form submission, from trade-in requests to parts orders, in one inbox.
  • ▸A site banner for announcements, and the admin password.

Opening hours live in one settings record, not in the footer, the structured data and the chat assistant separately. Edit them once and the public planning, the footer, the live "open, closes at 12:30" status in the header and the search engine markup all follow.

Storage is deliberately small. A garage writes a handful of records a day, so bookings, messages and settings live in a JSON document store on a persistent data volume. Writes are serialised and land atomically, written to a temporary file and then renamed, and reads are cached in memory and reloaded when the file changes. A database server would add more moving parts than the problem has.

A chat assistant that calls no AI service

The assistant answers in French and can book a slot, but it never sends a message to an AI provider. It is a deterministic engine built for this one garage: text normalisation, a light stemmer, typo-tolerant keyword matching, intent and service detection, date and time parsing, and a scored search over the garage's own FAQ, service pages and articles.

  • ▸Predictable answers. It cannot invent a price, a warranty condition or an opening hour, because it only answers from what the garage has published.
  • ▸No customer messages sent to a third party, and no cost per message.
  • ▸It books through the same door as the form. A customer can write a day and a part of the day in their own words, such as "samedi matin", see the free times, then give the vehicle and contact details in the conversation. The request goes through the same endpoint and the same capacity check as the booking form.
  • ▸It never quotes yesterday's hours, because its knowledge is served from one cached endpoint that is invalidated together with the planning.

Large language models have their place, and we build with them every day. For a small business with a known set of questions, a rule-based assistant is often the safer default: How to Safely Integrate LLMs Into Your Product Without Leaking Data.

Every public form goes through one front door

Bookings, contact messages, sale and trade-in requests and parts orders all pass the same intake before anything is stored or emailed. One front door means one place to get spam protection right.

  • ▸A same-origin check, so other sites cannot post into the forms.
  • ▸A rate limit per address and per kind of form: six submissions every ten minutes.
  • ▸A honeypot field and a minimum fill time of two and a half seconds, faster than a person can type a phone number.
  • ▸Schema validation with field-level errors for people, while bots get a quiet success response, so they learn nothing about what failed.
  • ▸Nothing is lost if email fails. Every request is stored in the back office inbox first. The notification email is a copy, not the record.

Our checklist for small business sites covers the rest of that ground: The Small Business Website Security Checklist for 2026.

Built to be found by search engines and answer engines

A garage competes on searches like "garage near me" and on questions like "when should I change my timing belt". Nexaros is built so that machines can read both the business and its advice without guessing.

  • ▸Structured data describes the business as an AutoRepair, an auto dealer and an auto parts store at once, following Google's local business guidance. The opening hours in that markup are generated from the back office settings, so they cannot drift from the real ones.
  • ▸A reserve action points search engines to the booking page, and the service catalogue, FAQ answers and articles each carry their own markup.
  • ▸llms.txt and llms-full.txt summarise the site for AI assistants, and robots.txt lets the main search and AI crawlers in while keeping /admin and the API out.
  • ▸Every article and service page has its own social preview image, and photos ship as responsive AVIF and WebP sets from 640 to 2560 pixels wide, with the hero image preloaded.

What changes when machines read a site first is covered in Your Website in the AI Era: What Changes When Machines Read It First.

The stack

Next.js 16 with the App Router and Cache Components, React 19 and Tailwind CSS v4, with GSAP (ScrollTrigger and SplitText) and Lenis for motion. The site is French only, and its copy passes a house-style check before every deployment. Same discipline, different trades: Inside artnapule.fr: A Restaurant Platform With Wallet Loyalty Cards and BookMov: Building a Premium VTC and Stays Platform for Paris.

How TuniCyberLabs helps

We build websites for businesses whose real product is time: a workshop bay, a table, a chauffeur, a consultation. Nexaros is live at nexaros.fr, with its planning at nexaros.fr/planning.

If your bookings still live in a paper diary, or in a phone that rings while your hands are in an engine, tell us how your days actually work and we will show you what that looks like as software. See how we approach custom software development, or start a project.

TAGS
Case StudyBooking PlatformAutomotiveSchedulingStructured DataWeb SecurityProduct EngineeringFrance

Frequently Asked Questions

What is Nexaros?

+

Nexaros is the website of an all-makes car garage in France, built by TuniCyberLabs and live at nexaros.fr. It covers mechanics, servicing, tyres, brakes, air conditioning, electronic diagnostics, used car sales and trade-ins, and spare parts, around a live workshop planning that customers can book in two minutes without creating an account.

How does the live planning decide which slots are free?

+

Each day is resolved from rules in a fixed order: a special day set by the garage, then closure periods, then French public holidays, then the weekly template. The day is cut into slots with a set length and capacity, thirty minutes and two cars by default, and each slot is shown as available, limited, full, blocked or past, with a minimum notice and a booking horizon applied.

How does the booking flow prevent double booking?

+

Writes to the store run one at a time, and the check that a slot still has a free place runs inside the same write as the new booking. If two customers ask for the last place at once, the second one is told the slot was just taken and sees a refreshed planning. A request holds its place until the workshop confirms or declines it.

Why does the chat assistant not use an AI service?

+

A garage has a known set of questions, so a deterministic assistant gives predictable answers, cannot invent prices or opening hours, sends no customer messages to a third party and costs nothing per message. It uses normalisation, typo-tolerant matching, intent detection and date parsing over the garage's own FAQ, services and articles, and books through the same endpoint as the form.

How are the website forms protected from spam?

+

Every public form goes through one intake: a same-origin check, a rate limit of six submissions every ten minutes per address and form type, a honeypot field, a minimum fill time of two and a half seconds, then schema validation. Bots receive a quiet success response, and every genuine request is stored in the back office inbox before any email is sent.

Can the garage change its opening hours without a developer?

+

Yes. The back office manages weekly hours, slot length and capacity, closure periods, special days, blocked slots, bookings, messages and a site banner. Hours are stored once, so a change updates the public planning, the footer, the live open or closed status, the chat assistant and the structured data at the same time.

Need help with
this topic
?

Our team specializes in the technologies and strategies discussed in this article. Let’s talk about how we can help your business.

Get in Touch

Related
Articles

Software Engineering

Your Live Dashboard Is Showing the Past. Can WebTransport Fix That?

WebTransport opens new options for fast browser applications. The buying decision starts with stale data, unreliable networks and the actions you cannot afford to lose.

Software Engineering

Your App Works Offline. What Happens When an Offline Employee Loses Access?

Local-first collaboration can make software feel immediate. Build the rules for cached data, revoked users and late edits before inviting a whole business to work offline.

Software Engineering

Node.js 20 Is Out of Support. Your Upgrade Needs More Than a Green Build.

The runtime upgrade looks small until PDFs, native modules and background jobs behave differently. Buy a verified production transition with a clear recovery route.

Back to all articles