Skip to content

Add Solutions section, BYOC deployment cards, mobile stack snap - #66

Merged
NicholasKissel merged 2 commits into
mainfrom
feat/solutions-section-byoc
Sep 15, 2026
Merged

NicholasKissel merged 2 commits into
mainfrom
feat/solutions-section-byoc

Conversation

@NicholasKissel

Copy link
Copy Markdown
Member

Summary

  • Homepage "Built for every kind of agent" section (SolutionsSection.tsx + CSS module), placed before Observability. Five cards: coding agents, agent app builders, company-specific agents, personal agents, realtime apps. Each vignette replays a short CSS-only story on hover/focus (hover-capable pointers only, prefers-reduced-motion respected). Rest state is the finished frame.
  • BYOC across the static site: deployment cards are now "Local & Self-Host / Rivet Cloud / BYOC"; BYOC added to the pricing "Compare Deployment Models" (incl. diagram variant), enterprise page section + CTA, on-prem pillar, footer link. Docs untouched.
  • Agent stack section on phones: scroll-snap per card so each card fits between the sticky diagram and the bottom of the screen.
  • Dev server: pre-bundles heavy dependencies via vite.optimizeDeps (dev only; production build unchanged).

Verification

  • tsc clean for touched files.
  • Hover animations recorded frame-by-frame in headless Chromium with hover emulation: no blank frames at hover start, realtime caret/tag marker tracks the text reveal edge to 0.1px.
  • Mobile snap verified at 393×852.

Thread: https://ampcode.com/threads/T-01a0a1bf-48c6-77f8-b65d-0b681d9f18a9

- New "Built for every kind of agent" section on the homepage with five
  solution cards (coding agents, agent app builders, company-specific
  agents, personal agents, realtime apps), each with a CSS-only hover
  vignette animation (hover-capable pointers, reduced-motion respected).
- Deployment options: "Local & Self-Host", "Rivet Cloud", and a new
  "BYOC" card; BYOC added to pricing comparison, enterprise page, on-prem
  pillar, and footer. Docs untouched.
- Agent stack section: scroll-snap cards on phones so each card fits
  between the sticky diagram and the bottom of the screen.
- Dev server: pre-bundle heavy deps via vite.optimizeDeps (dev only).

Amp-Thread-ID: https://ampcode.com/threads/T-01a0a1bf-48c6-77f8-b65d-0b681d9f18a9
Co-authored-by: Nicholas Kissel <nicholas@rivet.gg>
@railway-app
railway-app Bot temporarily deployed to rivet-website / website-pr-66 September 15, 2026 04:13 Destroyed

@the-company-company the-company-company Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟠 1 medium-severity finding

Reviewed commit 8bfacfe.

diagram: DeploymentDiagramVariant;
cta: string;
href: string;
primary: boolean;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟠 Medium · Show the bring-your-own-compute boundary accurately

This card explicitly offers a configuration where the backend runs on Vercel, Railway, Cloudflare, AWS, or Kubernetes, but its managed diagram and accessible description place the backend inside the Rivet Cloud boundary. The comparison therefore tells visitors choosing that advertised option that Rivet Cloud operates their backend, which contradicts the card copy and the deployment model.

Use a diagram/ARIA variant that separates customer compute from Rivet Cloud for this option, or present bring-your-own compute as its own model rather than attaching it to the fully managed diagram.

@railway-app
railway-app Bot temporarily deployed to rivet-website / website-pr-66 September 15, 2026 04:17 Destroyed

@the-company-company the-company-company Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟠 2 medium-severity findings

Reviewed commit 5422a63.

diagram: DeploymentDiagramVariant;
cta: string;
href: string;
primary: boolean;

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟠 Medium · Show the bring-your-own-compute boundary accurately

This card explicitly offers a configuration where the backend runs on Vercel, Railway, Cloudflare, AWS, or Kubernetes, but its managed diagram and accessible description place the backend inside the Rivet Cloud boundary. The comparison therefore tells visitors choosing that advertised option that Rivet Cloud operates their backend, which contradicts the card copy and the deployment model.

Use a diagram/ARIA variant that separates customer compute from Rivet Cloud for this option, or present bring-your-own compute as its own model rather than attaching it to the fully managed diagram.

const title = 'Enterprise Infrastructure';
const description =
'Run Rivet on-prem, in your VPC, inside customer environments, or fully air-gapped with an enterprise control plane and no required outbound connections.';
'Run Rivet in your VPC with BYOC, on-prem, inside customer environments, or fully air-gapped with an enterprise control plane and no outbound connections.';

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟠 Medium · Do not promise no outbound connections for BYOC

The description now advertises BYOC while saying the deployments have “no outbound connections.” BYOC requires the in-cluster operator to poll Rivet Cloud and report status, and its documented outbound requirements also include release downloads, log uploads, cloud APIs, and registries. This makes the Enterprise search description promise an unsupported network posture.

Keep “no required outbound connections” for self-hosted/air-gapped deployments, or qualify the claim so it excludes BYOC.

@NicholasKissel
NicholasKissel merged commit 6cac4de into main Sep 15, 2026
4 checks passed
@NicholasKissel
NicholasKissel deleted the feat/solutions-section-byoc branch September 15, 2026 04:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants