LSSM.TECH

THE ARCHITECTURE OF A PRODUCT FAMILY

Shared foundations.
Different ways forward.

A brand is a promise to a particular person. Its interface should make sense in that person’s world—even when the underlying capabilities are shared.

01 / THE REUSE MODEL

Share the parts.
Compose the experience.

The shared layer owns dependable behaviour. The experience layer decides how a person encounters it. A family can support several brands; a brand can support several useful entry experiences.

  1. 01

    Shared foundations

    Primitives, accessibility and design tokens.

    Consistent mechanics
  2. 02

    Canonical tasks

    Evidence, documents, rules and review.

    A dependable core
  3. 03

    Brand composition

    Audience, vocabulary, sequence and density.

    A useful difference
  4. 04

    Product surfaces

    The app and its marketing preview.

    A recognisable experience
The ecosystem architecture

In the target architecture, BrainOS supplies context and intelligence, ContractSpec defines and builds, and Patio supplies shared infrastructure and data. LSSM OS composes these inputs, then runs and operates their environments. Explore these relationships ↗

Current source → direct component reuse

The inspected Tafio repository implements shared career records and multiple product presenters. It explicitly remains standalone. Bringing these boundaries into a shared monorepo with the wider LSSM ecosystem is the next architecture direction, not an integration established by this review.

02 / FOUR COMPOSITIONS

A different task
deserves a different surface.

Switch between the proposed public identities to see the source-kit tokens, working object and task sequence. The new names come from the brand handoff; the source kits retain their current repository names.

D’un bon pas / CAREER AGENTS

Recognise a useful experience

Working object
An experience notebook
Task sequence
Recall → recognise → put into words
Shared task
Profile and evidence
Explore the brand ↗

YOUR JOURNEY. ROOM FOR WHAT COMES NEXT.

Your first application.
With what you have already done.

Recover useful experiences, review your profile and prepare an application that reflects your work. You do not need to arrive with a perfect CV.

Starting from what you have done room to grow

Start with something you have done

“At an association, I gathered requests in a spreadsheet and flagged missing information to the person responsible.”

Fictional example · local interaction

YOUR NEXT CV

A contribution, clearly expressed.

“Gathered an association’s requests in a tracking spreadsheet and flagged missing information to the person responsible.”

The emphasis can change with the opportunity. Your actual role stays the same.

Paper #F3F2DCInk #173E2BAccent #DCE798

Fraunces / DM SansComfortable folio · inline navigation

Source kit: canopee.ts. The visual reproduces its real landing component; the public name follows the brand handoff.

These previews reproduce the original landing markup, component layouts, tokens, fonts and assets available in source. They use local sample state. Every replica records its source and a TODO to replace it with the real component import after the monorepo merge.

03 / ONE REGISTRY, SEVERAL READINGS

Different front doors.
Coherent relationships.

Keep areas, groups, capabilities, audiences, operating models, families and projects as linked records. Each website chooses the relationships that help its own visitor.

lssm.tech

Understand the construction.

Foundation → task → component → product example.

Follow the source ↗

Family membership does not establish legal company ownership. Component reuse does not grant permission to share customer records between products.

04 / REUSE THE PRODUCT’S OWN VISUALS

Let the product
explain itself.

A small, relevant view of the actual working interface can say more than a generic feature tile. Choose the reuse mode deliberately and keep its provenance visible in the implementation.

WHEN THE BOUNDARY IS READY

Live display component

Render a product-owned display module with a reviewed synthetic fixture and a read-only adapter. Share theme tokens and layout rules. Keep authentication, data access and mutation handlers outside the preview bundle.

Best for: reusable, isolated presenters.

WHEN RUNTIME REUSE IS UNSUITABLE

Static product capture

Generate an image from a known build and sample state. Record the product, source revision, viewport and capture date, with accessible alternative text.

Best for: complex or coupled screens.

USED IN THIS REVIEW

Source component replica

Port the actual product component into this static review: its structure, theme, typography, assets and useful sample interactions. Keep the originating repository, revision and component beside the code.

TODO after merge: replace the replica with the original component import.

05 / THE IMPLEMENTATION SEAM

A registry to connect.
An adapter to display.

This proposed TypeScript contract separates portfolio identity from preview execution. The adapter accepts a synthetic fixture; it receives no authenticated workspace, account authority or operation runner.

REFERENCE DESIGN / TYPESCRIPT
type AreaId = string;
type GroupId = string;
type CapabilityId = string;
type AudienceId = string;
type OperatingModeId = string;
type SurfaceId = "landing" | "app";

type AreaGroup = {
  id: GroupId;
  areaId: AreaId;
  brandIds: readonly string[];
};

type SourcePreview = {
  surface: SurfaceId;
  repository: string;
  revision: string;
  componentPath: string;
  mode: "source-replica" | "component-import";
  fixtureId?: string;
};

type BrandRecord = {
  id: string;
  familyId?: string;
  areaIds: readonly AreaId[];
  groupIds: readonly GroupId[];
  capabilityIds: readonly CapabilityId[];
  roleIds: readonly AudienceId[];
  operatingModeIds: readonly OperatingModeId[];
  destinations: readonly string[];
  previews: readonly SourcePreview[];
};

// One identity, several area/group and capability/audience memberships.
// A source-evidenced capability differs from a requested direction.
// Record capability coverage and evidence per project.
// SOURCE: tafio-poc-openai-dev-day/apps/web/experiences/landings/*
// TODO(monorepo): import the original landing or app presenter here.
// Preserve its theme, layout, assets and read-only synthetic fixture.
// The portfolio supplies placement/context; the product owns its design.
export interface ProductPreviewAdapter<Fixture, View> {
  render(input: {
    brand: BrandRecord;
    surface: SurfaceId;
    fixture: Readonly<Fixture>;
    mode: "read-only";
  }): View;
}

Keep the mapping explicit.

Track the brand, its many area/group memberships, capabilities, audiences, operating models, family and source surfaces independently. A brand can show several landing and app components. Keep domain ownership, name acceptance and product availability in separate fields in the production registry.

Integrate at a proven seam.

Start with the presentation definitions and a read-only presenter. Extract shared packages only when a second real use establishes the boundary. Keep task rules in their canonical owner.

Preserve the useful difference.

Let brands change navigation, density, voice and task sequence. Verify that the first useful action improves for the intended situation before standardising the composition.

06 / SOURCE & EVIDENCE

Concrete seams
in the current source.

ContractSpec Studio adds the product-owner and product-manager workflow, including its own marketing and planning views. The Tafio paths establish the composition model. The per-brand index then identifies the exact components from Tafio, Fairelio, Taketide, ContractSpec, ContractSpec Studio, Tellshift and the retained hCircle source.

Visual identity

Palette, typography and composition definitions

apps/web/presentation/definitions/ ↗

Goal-based experience

Situations, tool priorities and involvement preferences

apps/web/experiences/registry.ts ↗

Task ownership

A canonical workspace above the product presenters

apps/web/products/contract.ts ↗

Composition boundaries

What changes, what stays shared and what is evidenced

docs/PRODUCT_COMPOSITION.md ↗

Repository boundaries

Domain modules and external integration seams

docs/TECHNOLOGY.md ↗

The component behind each preview.

Every entry names the source revision and the component to import after the merge. Marketing specimens stay identified as marketing specimens; an app excerpt uses its own source component.

Tafiolssm-tech/monorepo-hirly-b2c-focused

Source revision 9283bcd99110b895a7e58e9df677b9dd3faf1aea · landing

TODO after monorepo merge
Import the extracted production MarketingHero / ProductPreview display components when this repository is merged; preserve the generated tokens from libraries/tokens/v3.json.

Faireliolssm-tech/tafio-poc-openai-dev-day

Source revision 359a4fa231e6470f40dc094cc4681e680010e516 · landing

TODO after monorepo merge
Replace with WorkingTableLanding from apps/mission-studio/features/landing/working-table.tsx and its reviewed fictional BriefInput fixture, using the canonical Fairelio brand definition after monorepo integration. Preserve the pinned Pactena source as provenance. The former founder-intelligence product is Tendframe and the separate creator platform is Taketide.

Jobrallylssm-tech/tafio-poc-openai-dev-day

Source revision 359a4fa231e6470f40dc094cc4681e680010e516 · landing

TODO after monorepo merge
Import TempoLanding from apps/web/experiences/landings/tempo/view, its style.css and the tempo presentation definition; replace textual rebrand with the canonical jobrally brand definition after monorepo merge.

Crossrolelssm-tech/tafio-poc-openai-dev-day

Source revision 359a4fa231e6470f40dc094cc4681e680010e516 · landing

TODO after monorepo merge
Import MosaiqueLanding from apps/web/experiences/landings/mosaique/view, its style.css and the mosaique presentation definition; replace textual rebrand with the canonical crossrole brand definition after monorepo merge.

Lettercaselssm-tech/tafio-poc-openai-dev-day

Source revision 359a4fa231e6470f40dc094cc4681e680010e516 · landing

TODO after monorepo merge
Import AtelierLanding from apps/web/experiences/landings/atelier/view, its style.css and the atelier presentation definition; replace textual rebrand with the canonical lettercase brand definition after monorepo merge.

D’un bon paslssm-tech/tafio-poc-openai-dev-day

Source revision 359a4fa231e6470f40dc094cc4681e680010e516 · landing

TODO after monorepo merge
Import CanopeeLanding from apps/web/experiences/landings/canopee/view, its style.css and the canopee presentation definition; replace textual rebrand with the canonical dunbonpas brand definition after monorepo merge.

CompanyOSlssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · landing / app

TODO after monorepo merge
TODO(monorepo): replace this display-only HTML port with @lssm-tech/bundle.marketing/components/companyos-assistant; keep a synthetic fixture and remove live accounts, transport and analytics from the embedded adapter.

Fellowhandlssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · landing / app

TODO after monorepo merge
TODO(monorepo): replace this display-only HTML port with @lssm-tech/bundle.marketing/components/companyos-campaign; keep a synthetic fixture and remove live accounts, transport and analytics from the embedded adapter.

ArtisanOSlssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · landing / app

TODO after monorepo merge
TODO(monorepo): replace this display-only HTML port with @lssm-tech/bundle.marketing/components/companyos-campaign; keep a synthetic fixture and remove live accounts, transport and analytics from the embedded adapter.

Briefhandlssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · landing

TODO after monorepo merge
TODO(monorepo): replace this display-only HTML port with @lssm-tech/lib.design-system (MarketingContractLandingPage); keep a synthetic fixture and remove live accounts, transport and analytics from the embedded adapter.

GTM Learning Looplssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · landing

TODO after monorepo merge
TODO(monorepo): replace this display-only HTML port with @lssm-tech/lib.design-system (MarketingContractLandingPage); keep a synthetic fixture and remove live accounts, transport and analytics from the embedded adapter.

Tendframelssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · landing

TODO after monorepo merge
TODO(monorepo): replace this display-only HTML port with FounderHero / IntelligenceField display exports from the merged founder-suite package; keep a synthetic fixture and remove live accounts, transport and analytics from the embedded adapter.

hCirclelssm-tech/vertical-hcircle

Source revision 7ad96491170f167a5229d21955ec1b6a1d7bc2ef · landing / app

TODO after monorepo merge
TODO(monorepo): replace this display-only HTML port with HeroV2 and pure WeeklyPulse display adapters from the merged hCircle web package; keep a synthetic fixture and remove live accounts, transport and analytics from the embedded adapter.

Tellshiftlssm-tech/tellshift-landing

Source revision 72261ab6af35f1886b07d31379c712d99660c9a8 · landing

TODO after monorepo merge
Extract/export CampaignPreview and CarouselArtwork from the merged Tellshift source; render with the same messages fixture.

Taketidelssm-tech/creator-platform-ugc

Source revision 3e8e2ddffc6aecb6fc85221702b259445b99366b · landing / app

TODO after monorepo merge
@pactena/marketing/web PublicStudio, a display-only CreatorHomeEditorial adapter, and @pactena/ui/web display components after monorepo integration, using fixture-only portfolio props and the canonical Taketide brand definition. Preserve the pinned Pactena source/package names as provenance; do not couple this creator product to the separate Fairelio mission studio.

ContractSpec Studiolssm-tech/contractspec-studio

Source revision 89cd701c550f539b7a96163044cbbd98dbb7cbd3 · landing / app

TODO after monorepo merge
Import EditorialPageHero + CompactProofRow with getHomeHeroCopy(en), and @contractspec/bundle.studio-presentation PmBoard/PmPortfolioFiltersPanel with getPmCopy(en), after their packages are merged. Preserve the marketing/app theme boundaries and display-only fixture adapters.

OSINTlssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · app

TODO after monorepo merge
TODO(monorepo): replace this portfolio port with @lssm-tech/bundle.osint OsintCommandCenterScreenV1 and the console display shell; retain source theme, fixture props and evidence boundaries.

Web acquisition & scrapinglssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · source

TODO after monorepo merge
TODO(monorepo): replace this portfolio port with Canonical provider-web-access support matrix from its owning package; retain source theme, fixture props and evidence boundaries.

BillingOSlssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · app / workspace

TODO after monorepo merge
TODO(monorepo): replace this portfolio port with @lssm-tech/module.billing-os/ui BillingLandingWorkspace and QuoteCard with the France-SME example fixture; retain source theme, fixture props and evidence boundaries.

FinanceOSlssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · app / contract

TODO after monorepo merge
TODO(monorepo): replace this portfolio port with Finance Ops CashAgingScreen/WorkflowWorkspace fixture adapter and FinanceOS canonical contract source; retain source theme, fixture props and evidence boundaries.

Usage & meteringlssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · source

TODO after monorepo merge
TODO(monorepo): replace this portfolio port with Canonical metering/economic-usage-ledger contract and company-metrics read model documentation; retain source theme, fixture props and evidence boundaries.

CommunicationOSlssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · app / landing

TODO after monorepo merge
Import CommunicationInbox, HcircleMarketingHome, HcircleMarketingHeader from their exact owning source paths; retain source theme and a reviewed display-only fixture adapter.

PersonalOSlssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · app

TODO after monorepo merge
Import PersonalOsShell, PersonalRoutePage, PlanningSummary, SummaryCard from their exact owning source paths; retain source theme and a reviewed display-only fixture adapter.

Personal agencylssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · app

TODO after monorepo merge
Import PlanningSummary, OutcomeSummary, PersonalOsShell from their exact owning source paths; retain source theme and a reviewed display-only fixture adapter.

Personal healthlssm-tech/contractspec

Source revision 17053b80fbb6ef6e8600cbdf9e03015d5b421eda · app

TODO after monorepo merge
Import HealthSummary, WellbeingGoalSummary, PersonalOsShell from their exact owning source paths; retain source theme and a reviewed display-only fixture adapter.

MailPatiolssm-tech/mailpatio

Source revision fcb3ed1dd5485a4e18e7d6db2db28df23e9158f4 · landing / app

TODO after monorepo merge
Import Home/CorrespondencePlate and CorrespondenceExample from packages/mailpatio-website with the original Postal Modernism theme and locale copy. Keep the display-only fixture; do not bind live mail or intake in portfolio previews.

Sarlalssm-tech/career-agent

Source revision 4e9e58906cf06123dfc501ea6729d1da56ca5ca6 · landing / app

TODO after monorepo merge
Import the original HomeHero/MeetingPoster/PairPosterArt and OpportunityPreview/PairFrame from career-agent, with its source tokens, synthetic copy and canonical Sarla brand definition after monorepo integration. Preserve the pinned Pactena source as provenance and retain the career-agent stable ID.

Download the complete source-component registry ↗
What this review establishes

The source contains distinct product presenters and scoped task evidence. Their presence does not establish that every proposed brand is launched or that the broader acceptance campaign is complete. This website does not execute the original application runtime.

Your view

Make room for your context.

Shape the presentation around this moment. You can change it whenever you need.

Your context

The different parts of you

Choose a starting point

A useful mix of context, visuals and gentle guidance.

Tune each dimension
Each dimension can change independently. Product permissions and available actions stay unchanged.

Support the way you begin and return

Tune your support

Reading comfort

Choose your language

Interface language changes text only. Markets, prices and workflows keep their own settings.

Translation coverage

Original source

Navigation151
Graph616
Categories378
Portfolio833
Examples2,035
Source preview1,542

More translations will be added as content is reviewed.

This preference is saved on this browser.

Search the website

Useful starting points

No results. Try a shorter phrase, an operation name or another search area.

A LITTLE ROOM TO EXPLORE

Find something to explore.

Open a closer look on this page, try a different perspective, or follow the detail into its own page.

How previews and controls work
01

Look before you leave

Hover a link or focus it with Tab to see a preview. Clicking the original link or pressing Enter always opens its destination.

02

Stay with the context

Move into the preview to explore its sections. Use Alt + ↓ from a focused link to enter it with the keyboard. Escape closes it.

03

Open the possibilities

Disclosure rows, perspective choices and highlighted controls reveal more. Your view changes reading comfort and the context you explore.

A separate button for a closer look

Show small preview buttons beside links where there is room. Tap the eye to inspect, or tap the link to go straight there. This choice stays in this tab.

No browsing history is collected. Reduced motion follows your device and Your view.