# Glossary

## Glossary

Plain-language meanings of the words used in these docs.

### Theme Words
| Word                 | What it means                                                                                              |
| -------------------- | ---------------------------------------------------------------------------------------------------------- |
| **Astro**            | The tool that turns Homio's files into a website. You don't need to learn it to edit content              |
| **Tailwind CSS**     | The styling system. Classes like `bg-sage` or `mt-8` in components set colors and spacing                  |
| **Static site**      | A website made of ready-made files, with no database or server code to run, so it is simple to host        |
| **Node.js**          | The program that runs Astro on your computer                                                               |
| **npm**              | Comes with Node.js. Installs the theme's tools (`npm ci` or `npm install`) and runs its commands (`npm run dev`) |
| **Terminal**         | A window where you type commands. In VS Code: **Terminal → New Terminal**                                  |
| **Dev server**       | The local copy of your site at `http://localhost:4321/` that updates when you save. Started with `npm run dev` |
| **Build**            | Turning the files into the finished website in the `dist/` folder, with `npm run build`                    |
| **Deploy**           | Putting the built site on the internet, on a host such as Netlify, Vercel, or Cloudflare Pages             |
| **Route**            | A file in `src/pages/` that becomes a page and decides which sections it shows                             |
| **Section**          | One full-width block of a page (hero, plans, FAQ). A component plus a content file                         |
| **Component**        | A `.astro` file that draws part of the page. You rarely need to edit these                                 |
| **Content file**     | A `.md` or `.mdx` file in `src/content/` that holds text and options                                       |
| **Markdown**         | A simple way to format text: `**bold**`, `## heading`, `- list item`                                       |
| **MDX**              | Markdown that can also use components (shortcodes) such as `<Callout>` or `<JobTicket>`                     |
| **Shortcode**        | A ready-made component you can place inside an `.mdx` file. `/components/` on your local site shows them all |
| **Frontmatter**      | The settings block between two `---` lines at the top of a content file, written in YAML                   |
| **YAML**             | The `key: value` format used in frontmatter. Indentation matters                                           |
| **TOML**             | The `key = value` format of `config.toml`, grouped under `[tables]`                                        |
| **JSON**             | The `"key": "value"` format of the menu, language, font, social, and translation files                     |
| **Collection**       | A folder of similar entries: services, areas, reviews, projects, job openings, blog posts                  |
| **Entry**            | One file in a collection, which usually becomes one page                                                   |
| **Slug**             | The part of the URL that names a page: `deep-cleaning` in `/services/deep-cleaning/`. Comes from the file name, or `customSlug` |
| **Named block**      | A section's settings written inside a page's frontmatter, to change that section on that page only         |
| **Layout**           | One of the looks a section can have, chosen with `options.layout`. `/elements/` previews them              |
| **Draft**            | A page with `draft: true`. It shows on the dev server but is not built                                     |
| **i18n**             | Short for "internationalization": the multi-language setup                                                 |
| **Schema**           | The list of fields a content file may have. `npm run astro-check` and the build report mistakes in files that have one. Section files and the contact page file have none, so check those pages in the browser |
| **Lucide**           | The free icon set Homio uses. Any name from [lucide.dev/icons](https://lucide.dev/icons/) works, for example `"House"` or `"Wrench"` |
| **Dark mode**        | The dark color scheme. Visitors switch with the light/dark button; `[settings.colorScheme] default` sets what they see first |
| **Open Graph image** | The preview picture shown when a link is shared on social media or in chat apps. Homio generates one per page |
| **Structured data**  | Hidden JSON-LD in each page that tells search engines about your business, services, areas, and prices   |
| **Sitemap**          | A list of every page, for search engines (`/sitemap-index.xml`)                                            |
| **`llms.txt`**       | A proposed format: a Markdown map of your site, with your business facts first, that AI assistants can read |
| **Git**              | A tool that saves versions of your project, so you can undo any change                                     |
| **Commit**           | One saved version in git                                                                                   |
| **Diff**             | A view of exactly what changed in a file: removed lines and added lines                                    |

### Homio Words
| Word                       | What it means                                                                                        |
| -------------------------- | ---------------------------------------------------------------------------------------------------- |
| **`[business]`**           | The block in `config.toml` with your company name, phone, email, address, hours, time zone, and closed dates. Every page reads them from there |
| **Business tokens**        | `{name}`, `{phone}`, `{email}`, `{address}`, and `{hours}` in Markdown text and some fields. Homio replaces them with the values from `[business]` (in `.md` files, not `.mdx`) |
| **Service-area business**  | A company that visits customers and has no public address. Set `[business.address] show = false` to hide the street and postal code everywhere |
| **Trade**                  | A group of services, such as cleaning, repairs, windows, or carpets. Trades are listed under `trades:` in `src/content/services/english/-index.md` and group the services menu and page |
| **Service**                | One thing you sell, such as a standard clean or gutter cleaning. One file in `src/content/services/` |
| **Included / not included**| The lists of tasks each service covers and never covers, by room. Set with `included` and `notIncluded` in the service file |
| **Rate card**              | The price rule of one service in the price file: by bedrooms and bathrooms (`rooms`), by the hour (`hourly`), or per item (`units`) |
| **Visit frequency**        | How often a customer books: weekly, every 2 weeks, monthly, or one-time. Each has its own discount |
| **Add-on**                 | A priced extra, such as inside the oven or a sofa, added to a visit                                 |
| **Estimator**              | The instant price calculator on the pricing page, service pages, and some heroes. It shows the price from your rate cards; it is not a live quote |
| **Ticket**                 | The receipt-style card that shows an estimate, a booking summary, or an area's details. The estimate ticket has a short code such as `EST-4K7Q2` |
| **Job ticket**             | A ticket you place in a blog post or page with the `<JobTicket>` shortcode, for example a checklist with a price |
| **Booking request**        | The multi-step form on `/book/`. It sends a request to your inbox; you confirm the visit yourself  |
| **Service area**           | A town or district you work in. One file in `src/content/areas/`, with its postal codes (`zips`), neighborhoods, and local notes, and its own page |
| **Area finder**            | The box where visitors type a postal code or a neighborhood to see whether you cover it            |
| **Crew**                   | The team that does the job. Homio's copy speaks of crews and technicians, and of background-checked, insured staff |
| **Re-clean guarantee**     | The promise on `/guarantee/`: if an item on the visit was not done to standard and the customer says so within 24 hours, the crew comes back to redo it for free. The time limits are samples: set your own terms |
| **Mobile action bar**      | The bar at the bottom of phone screens with **Call** and the header's main button (`[settings.mobileActionBar]`) |
| **Mega menu**              | The wide dropdown under **Services** in the header that lists your trades and services             |
| **Layout switcher**        | A floating **Change layout** button for the theme's demo. Off by default (`[settings.layoutSwitcher] enable = false`); keep it off on your site |
| **Sample**                 | A placeholder fact in the content files, marked `# sample`: prices, phone, address, reviews, ratings, team members, and photos. Replace each one before you launch |