源码快照 @ 2026-09-02 (source-only, 剔除非源码素材)
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
# @openwork/ui
|
||||
|
||||
Shared UI primitives for OpenWork apps.
|
||||
|
||||
This package ships one entrypoint: `@openwork/ui/react`, used by `apps/app`
|
||||
and `ee/apps/den-web`. (A Solid flavor existed during the Solid-to-React
|
||||
migration and was removed once the last Solid consumer disappeared.)
|
||||
|
||||
Exports resolve to `src/` directly, so consumers need no build step.
|
||||
|
||||
## Paper components
|
||||
|
||||
The first shared components live under the `paper` namespace and wrap Paper Design shaders with OpenWork-specific defaults and deterministic seed support.
|
||||
|
||||
Current components:
|
||||
|
||||
- `PaperMeshGradient`
|
||||
- `PaperGrainGradient`
|
||||
- `OpenWorkRoadmap`
|
||||
- `DownloadOpenWorkCard`
|
||||
|
||||
Both accept a `seed` prop. Pass a TypeID-like string such as `om_01kmhbscaze02vp04ykqa4tcsb` and the component will deterministically derive colors and shader params from it. The same seed always produces the same result.
|
||||
|
||||
Explicit props still work and override the seeded values, so the merge order is:
|
||||
|
||||
1. OpenWork defaults
|
||||
2. Seed-derived values from `seed`
|
||||
3. Explicit props passed by the caller
|
||||
|
||||
## Roadmap component
|
||||
|
||||
`OpenWorkRoadmap` is the shared visual roadmap used by the landing and docs
|
||||
routes. Its typed sections are exported as `roadmapSections` so other OpenWork
|
||||
surfaces can reuse the same source of truth.
|
||||
|
||||
## Layout convention
|
||||
|
||||
These components default to `fill={true}`, which means they render at `width: 100%` and `height: 100%`. Put them inside a sized container and they will fill it without needing manual width or height props.
|
||||
|
||||
## Agent notes
|
||||
|
||||
- Shared seed logic lives in `src/common/paper.ts`
|
||||
- React wrappers live in `src/react/paper/*`
|
||||
- Prefer extending the existing seed helpers instead of inventing per-app one-off shader configs
|
||||
Reference in New Issue
Block a user