Some checks failed
Main Confidence / confidence (push) Failing after 42s
## Summary - establish the initial Astro website foundation for `apps/website` with explicit TypeScript, Tailwind CSS v4, and reusable layout/content primitives - ship the v0 public route set for home, product, solutions, security & trust, integrations, contact, legal, privacy, and terms - add SEO/discovery basics, Playwright browser smoke coverage, and the full Spec 213 planning bundle under `specs/213-website-foundation-v0` - extend ignore rules for website test artifacts and refresh Copilot agent context for the new website stack ## Validation - `corepack pnpm build:website` - `cd apps/website && corepack pnpm exec playwright test` ## Notes - branch: `213-website-foundation-v0` - commit: `020d416d0d8af4d16a981ff4f4f6d90153b9c603` Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #249
91 lines
3.8 KiB
TypeScript
91 lines
3.8 KiB
TypeScript
import type {
|
|
AudienceRowContent,
|
|
FeatureItemContent,
|
|
HeroContent,
|
|
PageSeo,
|
|
} from '@/types/site';
|
|
|
|
export const solutionsSeo: PageSeo = {
|
|
title: 'TenantAtlas | Solutions',
|
|
description:
|
|
'TenantAtlas fits MSP and enterprise IT teams differently, and the public story should make those operating-model differences explicit.',
|
|
path: '/solutions',
|
|
};
|
|
|
|
export const solutionsHero: HeroContent = {
|
|
eyebrow: 'Audience fit',
|
|
title: 'Show how TenantAtlas fits MSP delivery teams and enterprise operators without collapsing them into one generic story.',
|
|
description:
|
|
'The product helps different organizations answer similar governance questions, but the surrounding workflow, accountability, and evidence needs are not identical. The site should acknowledge that directly.',
|
|
primaryCta: {
|
|
href: '/integrations',
|
|
label: 'Review the ecosystem fit',
|
|
},
|
|
secondaryCta: {
|
|
href: '/contact',
|
|
label: 'Talk through your evaluation path',
|
|
variant: 'secondary',
|
|
},
|
|
highlights: [
|
|
'Separate MSP and enterprise language on purpose.',
|
|
'Keep the product story stable while the buying context changes.',
|
|
'Avoid forcing every visitor through the same generic motion.',
|
|
],
|
|
};
|
|
|
|
export const solutionsAudiences: AudienceRowContent[] = [
|
|
{
|
|
audience: 'MSP',
|
|
title: 'MSP operating model',
|
|
description:
|
|
'Managed service providers need tenant-scoped operational truth, repeatable review workflows, and a way to explain change history to customers without drowning in manual evidence gathering.',
|
|
bullets: [
|
|
'Keep per-tenant history and restore posture reviewable during service delivery.',
|
|
'Support a higher tempo of customer change while preserving a clean audit story.',
|
|
'Give account and delivery teams a shared language for exceptions, findings, and follow-up.',
|
|
],
|
|
cta: {
|
|
href: '/contact',
|
|
label: 'Discuss MSP delivery fit',
|
|
variant: 'secondary',
|
|
},
|
|
},
|
|
{
|
|
audience: 'Enterprise IT',
|
|
title: 'Enterprise IT operating model',
|
|
description:
|
|
'Internal IT and security teams need durable version truth, change visibility, and review evidence that can stand up to operational leadership, audit, and cross-team scrutiny.',
|
|
bullets: [
|
|
'Reduce uncertainty around who changed what and when across the Microsoft tenant surface.',
|
|
'Support internal review packs, exception handling, and evidence collection without fragmented tooling.',
|
|
'Keep restore and remediation conversations grounded in the current tenant state and the relevant history.',
|
|
],
|
|
cta: {
|
|
href: '/security-trust',
|
|
label: 'Inspect the trust posture',
|
|
variant: 'secondary',
|
|
},
|
|
},
|
|
];
|
|
|
|
export const solutionsSignals: FeatureItemContent[] = [
|
|
{
|
|
eyebrow: 'Why buyers care',
|
|
title: 'The product is serious about both velocity and control.',
|
|
description:
|
|
'Teams can move quickly without giving up visibility, confirmation discipline, or explainability when a risky change needs review.',
|
|
},
|
|
{
|
|
eyebrow: 'Where it lands',
|
|
title: 'The product belongs in the operating layer, not just the reporting layer.',
|
|
description:
|
|
'Visitors should understand that TenantAtlas helps teams make safer decisions about configuration state rather than merely summarize activity afterward.',
|
|
},
|
|
{
|
|
eyebrow: 'How it reads',
|
|
title: 'The story changes by audience, but the product truth does not.',
|
|
description:
|
|
'MSP and enterprise readers see their own operating concerns reflected without the site inventing two different products.',
|
|
},
|
|
];
|