@flan/business-website (1.1.0)
Installation
@flan:registry=https://git.arch.fyi/api/packages/flan/npm/npm install @flan/business-website@1.1.0"@flan/business-website": "1.1.0"About this package
Business Website Module
A private, versioned Astro package for local service and professional business websites. It shares the responsive whitespace, shell, components, and configuration contract used by the Castles & Cottages and InTown sites without coupling business facts, branding, forms, hosts, or secrets.
Package API
---
import BusinessLayout from '@flan/business-website/layout';
import PageHeader from '@flan/business-website/page-header';
import type { SiteConfig } from '@flan/business-website/types';
import { site } from '../config/site';
---
<BusinessLayout site={site} title={`Services | ${site.name}`}>
<PageHeader title="Services for" emphasis="real needs." />
</BusinessLayout>
The package imports its own global CSS through BusinessLayout; consumers can also import @flan/business-website/styles.css when they need the presentation primitives without the shell. BusinessLayout accepts optional named head, brand, and footer slots for site-owned fonts, favicon metadata, wordmarks, and footer contact details.
Start A Site
- Create an Astro site repository and add
@flan/business-websitefrom the Gitea npm registry. - Copy the structure from
examples/starter/, not its example business claims. - Add verified facts, palette, navigation, services, work, and contact details to that site's
src/config/site.ts. - Add documented images under the site's
public/directory and publish work only with approval. - Add forms, secrets, headers, and deployment configuration in the consumer site only.
- Run the consumer's check and build commands before deployment.
Shared Versus Site-Specific
Shared in this module:
- Responsive layout containment and mobile navigation repairs.
- Accessible page structure, focus states, descriptive metadata, and a contact-details page.
- Reusable
BusinessLayout,PageHeader, andContactDetailscomponents. - A typed site configuration contract and theme variables.
Site-specific by design and retained in consumer repositories:
- Business facts, services, rates, portfolio entries, imagery, and color palette.
- Form delivery, spam controls, secrets, security headers, and server runtime.
- Dockerfiles, provider deployment configuration, DNS, health checks, and monitoring.
Example And Verification
examples/starter/ is a static Astro consumer that exercises the package with explicitly illustrative content. It is not published with the package.
Run all verification from this repository:
npm install --no-audit --no-fund
npm run check
npm run build
npm run pack:check
Publishing
The package publishes to the private Gitea npm registry under the @flan scope. Publishing requires a Gitea token with package-write scope configured locally; do not commit it. Publish a SemVer version only after npm run publish:check passes.
Dependencies
Development Dependencies
| ID | Version |
|---|---|
| @astrojs/check | ^0.9.10 |
| astro | ^7.2.9 |
| typescript | ^6.0.3 |
Peer Dependencies
| ID | Version |
|---|---|
| astro | ^7.0.0 |