Skip to content

dogfood: Remix 3 website clone on WebJs (feasibility experiment) #957

Description

@vivek7405

What this is

A feasibility experiment: the Remix 3 marketing homepage (https://remix.run) rebuilt on WebJs with no build step, to test how far the framework can go for "extremely futuristic" marketing sites. It is an internal experiment, NOT a real Remix property; the design, copy, and assets are ported from the open-source remix-run/remix-website repo (MIT) purely to measure feasibility, and it is not deployed as Remix.

Lives on branch experiment/remix-website-clone, under remix-website/ (a new app in the monorepo), tracked by the linked PR.

Outcome

Feasibility confirmed. WebJs hosts a Remix-3-grade site cleanly, with no bundler:

  • A live Three.js particle background (the engine ported near-verbatim, framework-agnostic), morphing between point-cloud presets on scroll, with bloom, afterimage trails, mesh-gradient background, mouse parallax, and projected labels.
  • The full design system: pure-black canvas, an animated @property --brand-cycle color, glowing Inter headlines over JetBrains Mono, frosted-glass feature sections, loading screen, package badges, section-nav, two-card ending, footer.
  • Three.js vendored into the importmap via jspm (single instance, no bundler); the engine boots client-side only through a dynamic import, so SSR never touches WebGL.
  • Progressive enhancement intact (SSR content reads without JS), webjs check passing, clean console.

The only real friction was the buildless type-erasability rule (one constructor parameter property) and vendoring Three.js by hand.

Dogfood issues this surfaced

This experiment produced four grounded framework issues: #953 (vendor pin drops uninstalled specifiers), #954 (worktree cannot resolve @webjsdev/*), #955 (recipe for a heavy client-only engine), #956 (prose hook false-positive on a quoted CLI script). Those are tracked separately and fixed in their own PR.

Tracking

  • Branch experiment/remix-website-clone pushed (done).
  • Draft PR opened and linked to this issue.
  • Decide whether to keep as a reference branch or merge.

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentation

Type

No type

Fields

No fields configured for issues without a type.

Projects

Status
Todo

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions