AudienceSection

apps/www/src/components/AudienceSection.astro · 33 lines · group Features & lists

Used by

Live sites: pages.gitt.one.

Samples 1

pages.gitt.one/

WHO IT IS FOR

Three ways a small website goes wrong

Gitt One Pages started as our own production line — we are its first and most demanding user.

If you commission websites

Your site is a hostage: it is built on whatever the studio that made it understands, so leaving means rewriting. The usual escape — a CMS of your own — buys you hosting bills, break-ins and updates.

Here the content is yours in plain files, and the site runs as a standard image on any hosting — including your own.

If you build websites

Every project is a unique artifact. A year later nobody remembers how to build it, the dependencies have rotted, and the developer who knew has left.

One conveyor for every site: the same builder image, the same pipeline, the same quality bar. Knowledge lives in conventions, not in people.

If you write the docs

Knowledge in markdown looks decent only inside GitLab. Handing it to a customer means either an invite to your repository or a website nobody has time to build.

Point a builder image at the repository and the same files become a site. Publishing costs a Dockerfile.

MDX of this sample
import OfficeBuildingIcon from 'astro-heroicons/outline/BuildingOffice.astro';
import ColorSwatchIcon from 'astro-heroicons/outline/Swatch.astro';
import CodeIcon from 'astro-heroicons/outline/CodeBracket.astro';

<AudienceSection
  subTitle="WHO IT IS FOR"
  title="Three ways a small website goes wrong"
  description="Gitt One Pages started as our own production line — we are its first and most demanding user."
>
  <AudienceItem
    who="If you commission websites"
    pain="Your site is a hostage: it is built on whatever the studio that made it understands, so leaving means rewriting. The usual escape — a CMS of your own — buys you hosting bills, break-ins and updates."
    answer="Here the content is yours in plain files, and the site runs as a standard image on any hosting — including your own."
    Icon={OfficeBuildingIcon}
  />
  <AudienceItem
    who="If you build websites"
    pain="Every project is a unique artifact. A year later nobody remembers how to build it, the dependencies have rotted, and the developer who knew has left."
    answer="One conveyor for every site: the same builder image, the same pipeline, the same quality bar. Knowledge lives in conventions, not in people."
    Icon={ColorSwatchIcon}
  />
  <AudienceItem
    who="If you write the docs"
    pain="Knowledge in markdown looks decent only inside GitLab. Handing it to a customer means either an invite to your repository or a website nobody has time to build."
    answer="Point a builder image at the repository and the same files become a site. Publishing costs a Dockerfile."
    Icon={CodeIcon}
  />
</AudienceSection>

Props

NameTypeRequiredDefaultDescription
subTitlestring
titlestringyes
descriptionstring

Source apps/www/src/components/AudienceSection.astro @ gitt.one

---
interface Props {
  subTitle?: string;
  title: string;
  description?: string;
}

const { subTitle, title, description } = Astro.props;
---

<div class="border-t border-gray-100 bg-gray-50">
  <div class="mx-auto max-w-7xl px-4 py-16 sm:px-6 lg:px-8 lg:py-24">
    <div class="max-w-3xl">
      {
        subTitle && (
          <h2 class="text-sm font-semibold uppercase tracking-wide">
            <span class="bg-gradient-to-r from-primary-500 to-primary-alt-600 bg-clip-text text-transparent">
              {subTitle}
            </span>
          </h2>
        )
      }
      <p class="mt-3 text-3xl font-extrabold tracking-tight text-gray-900 sm:text-4xl">
        {title}
      </p>
      {description && <p class="mt-4 text-lg text-gray-500">{description}</p>}
    </div>
    <div class="mt-12 grid grid-cols-1 gap-8 lg:grid-cols-3">
      <slot />
    </div>
  </div>
</div>

Source links point to engine-astro@e857a859. Samples are cut from the sites' own content by scripts/gallery-extract.mjs; nothing is merged or removed yet.