Single-object viewer POC (#14)

This commit implements a Sketchfab-style single-object viewer as a minimal
proof-of-concept.

### `@storyteller/studio-web`
This is a new package to house web components for interfacing with the
`@storyteller/studio` WASM library. It currently includes a single component,
`<sts-viewer />`, which is exported from `@storyteller/studio-web/viewer`.

### `react-frontend`
This is a new application intended as a proof-of-concept and testbed for React
interop with `@storyteller/studio-web`.

Web components are currently a little bit fiddly to use in a React application.
`react-frontend/src/app/studio-viewer.tsx` demonstrates how a React-idiomatic
component can be written as a thin wrapper around a web component, and
`react-frontend/src/app/app.tsx` demonstrates that wrapper component in use.
This commit is contained in:
Danny McGee
2023-12-07 15:46:32 -05:00
committed by GitHub
parent 155272a5ba
commit cba70a62ae
70 changed files with 71793 additions and 1157 deletions
+8 -1
View File
@@ -6,14 +6,19 @@
"private": true,
"devDependencies": {
"@nx/js": "16.9.1",
"@nx/react": "16.9.1",
"@nx/vite": "16.9.1",
"@nx/web": "16.9.1",
"@nx/workspace": "16.9.1",
"@nxrs/cargo": "^0.4.0",
"@swc/core": "~1.3.85",
"@testing-library/react": "14.0.0",
"@types/lodash": "^4.14.199",
"@types/node": "18.7.1",
"@types/node": "18.14.2",
"@types/react": "18.2.14",
"@types/react-dom": "18.2.6",
"@types/which": "^3.0.2",
"@vitejs/plugin-react": "~4.0.0",
"@vitest/coverage-c8": "~0.32.0",
"@vitest/ui": "~0.32.0",
"chalk": "^5.3.0",
@@ -36,6 +41,8 @@
"@fortawesome/fontawesome-pro": "^6.4.2",
"lit": "^2.8.0",
"lodash": "^4.17.21",
"react": "18.2.0",
"react-dom": "18.2.0",
"tslib": "^2.3.0"
}
}