All docs

Docs

Spring Design Library — Project Overview and Goals

Audience: Leadership, product, design, engineering
Purpose: Kickoff document — what we are building, why it matters, and how we measure success
Last updated: June 2026
Status: Active planning baseline


Executive summary

The Spring Design Library is the Opportunity Generation team's product platform for building, testing, and shipping customer-facing financial experiences. It is not just a component catalog — it is the infrastructure that lets us:

  1. Prove product efficiency through a live Application Flow built entirely from the design system.
  2. Iterate with designers, stakeholders, and developers on a shared prototype before production investment.
  3. Inject Spring look-and-feel into any host app — including vibe-coded or third-party platforms — even when not every component exists yet.
  4. Experiment safely in a Playground lane before graduating work into the canonical package.

First deliverable: Publish the Application Flow in 1–2 weeks (target: mid-July 2026). Everything else builds on that anchor.


Problem statement

PainImpact
Design-to-code work was inconsistentWrong file targets, duplicate components, slow handoffs
No end-to-end prototype to test DS efficiencyHard to prove the system works as a product building block
Design system not adoptable outside the monorepoVibe-coded apps and partner platforms cannot easily inherit Spring branding
Discovery and delivery were disconnectedFeatures shipped before value/usability/feasibility were validated

Product vision

3–5 year vision: Spring Financial ships every customer-facing product from a shared, injectable design system that makes discovery fast and delivery predictable.

Near-term vision (12 weeks): A published Application Flow prototype, validated by internal stakeholders, with a documented path to adopt the design system on any React/Next.js host.


Strategic goals

#GoalSuccess looks like
G1Prove DS product efficiencyAppFlow built from @spring/ds-react; component swap tests pass in <2 hours
G2Establish internal feedback loopStructured reviews from designers, stakeholders, and developers after publish
G3Align architecture for scaleDev + DevOps agree on package boundaries, CI, and publish path
G4Make the DS injectableAny host app can reach Spring typography/color/spacing in <4 hours (tokens layer)
G5Enable safe experimentationPlayground operational as discovery lane; clear graduation path to package
G6Support multi-brand when readyTheme switching only after injectability is proven — not before

OKRs (12 weeks post-publish)

ObjectiveKey ResultsTarget date
O1 — Prove DS product efficiencyAppFlow published; ≥90% interactive UI uses DS components; swap test <2hWeek 2
O2 — Establish feedback loop3 review sessions (design, stakeholder, dev); prioritized backlog with risk tagsWeek 4
O3 — Make DS adoptableInjectable guide + 2 pilot integrations; L1 token restyle in <4hWeek 9
O4 — Enable safe experimentationPlayground workflow documented; ≥1 experiment graduates to packageWeek 12

Inspired framework (Marty Cagan)

We apply principles from Inspired: How to Create Tech Products Customers Love to avoid building features nobody needs.

Dual-track agile (not waterfall)

Discovery and delivery run in parallel by the same cross-functional team — not as sequential phases with handoffs.

flowchart LR
  subgraph discovery [DiscoveryTrack]
    proto[Prototype]
    risks[TestFourRisks]
    learn[LearnAndPrioritize]
  end
  subgraph delivery [DeliveryTrack]
    build[BuildAndHarden]
    ship[ShipAndMeasure]
  end
  proto --> risks --> learn
  learn --> build --> ship
  ship --> proto

Four risks to test at every decision

RiskQuestion for this project
ValueDoes the AppFlow + DS reduce time-to-prototype and improve product quality?
UsabilityCan designers, stakeholders, and developers review and iterate without friction?
FeasibilityCan engineering/DevOps maintain, publish, and consume @spring/ds-react reliably?
Business viabilityDoes this support OG goals — conversion, velocity, trust?

We prioritize backlog items by which risk they reduce, not by feature count.

Outcomes over outputs

We measure success by outcomes (stakeholder can walk the flow end-to-end; external app looks like Spring in 4 hours), not by shipping screen counts alone.


Current maturity (baseline)

AreaStatusNotes
AppFlow screens22/23 with real UI1 placeholder (start); analyzing→outcomes routing missing
Design system packageStrong@spring/ds-react — ~27 component families, token pipeline, ~1,173 icons
AppFlow packageExtracted@spring/personal-loan-appflow shared by gallery + standalone app
GalleryLive/library/* — docs, tokens, components, AppFlow, Playground
Standalone appExistsapps/personal-loan at /personal-loans/*
PlaygroundEarly3 projects; exploration/pending-approval status
CIPartialLint + build; manual QA not yet in CI
External publishNot yetSource-only monorepo consumption via file: links
Production backendOut of scopeNo API, Flinks, Twilio, or persistence in gallery prototype

Detailed implementation status: personal-loan-appflow-master-plan.md


What "publish" means (and what it does not)

Publish means (Week 1–2)

  • Clickable Application Flow: start → name → … → analyzing → outcome without manual URL entry
  • Gallery route: /library/page/appflow/personal-loan/start
  • Standalone app mirrors the flow: /personal-loans/start
  • Flow map + PageMapPopup usable for stakeholder walkthrough
  • Manual walkthrough checklist signed by PM + designer
  • npm run lint && npm run build pass

Publish does NOT mean

  • Production application with backend APIs
  • Full mobile layout pass on all 20+ screens
  • npm package published externally
  • Multi-brand theme switching
  • All production branches and edge cases wired

Stakeholder map

RolePrimary interestEngagement cadence
Leadership / bossRoadmap, milestones, ROI of DS investmentKickoff + end-of-wave reviews
Product / PMFlow narrative, prioritization, publish criteriaDaily during publish sprint; bi-weekly after
DesignVisual fidelity, token fit, playground experimentsPublish sprint + Wave 1 review
EngineeringPackage architecture, reuse, CIPublish sprint + Wave 2 RFC
DevOpsBuild pipeline, deployment, publish pathWave 2 onward
Stakeholders (business)End-to-end demo, conversion momentsWave 1 sign-off session

Related documents

DocumentRole
02-roadmap-and-milestones.mdTimeline and milestones
03-phase-playbook.mdTasks, testing, exit criteria per wave
04-product-decision-framework.mdWhen to rebrand, add features, or enhance usability
personal-loan-appflow-master-plan.mdEngineering implementation tracker
REPOSITORY_STRUCTURE.mdRepo architecture and debt register
agentic-workflow-overview.mdAI-assisted design-to-code workflow