MCPcopy
hub / github.com/theatre-js/theatre

github.com/theatre-js/theatre @0.7.1 sqlite

repository ↗ · DeepWiki ↗ · release 0.7.1 ↗
2,128 symbols 6,601 edges 589 files 139 documented · 7%
README

Theatre.jsTheatre.js

Motion Design, for the web

GitHub branch checks state Join us on Discord Follow Theatre.js on Twitter Watch on YouTube

✨ Update: We're hiring – join the core team!

Theatre.js is an animation library for high-fidelity motion graphics. It is designed to help you express detailed animation, enabling you to create intricate movement, and convey nuance.

Theatre.js can be used both programmatically and visually.


You can use Theatre.js to:

  • Animate 3D objects made with THREE.js or other 3D libraries

s

Art by drei.lu

  • Animate HTML/SVG via React or other libraries

s

  • Design micro-interactions

s

  • Choreograph generative interactive art

s

  • Or animate any other JS variable

s

Documentation and Tutorials

The docs are at theatrejs.com/docs:

Community and support

Join our friendly community on Discord, follow the updates on twitter or write us an email.

Development and contributing

If you want to change the source of Theatre, have a look at the guide here.

Proposing fixes and changes

You can always get help with bugfixes or discuss changes with our community on Discord, or directly open an issue on Github.

Helping with outstanding issues

Feel free to chime in on any issue. We have also labeled some issues with "Help wanted" or "Good first issue" if you're just getting started with the codebase.

Helping with documentation

The documentation website's repo is here.

Writing/recording tutorials

If you make tutorials or video content about Theatre, tell us to showcase it here :)

License

Your use of Theatre.js is governed under the Apache License Version 2.0:

  • Theatre's core (@theatre/core) is released under the Apache License. Same goes for most packages in this repository.
  • The studio (@theatre/studio) is released under the AGPL 3.0 License. This is the package that you use to edit your animations, setup your scenes, etc. You only use the studio during design/development. Your project's final bundle only includes @theatre/core, so only the Apache License applies.

Extension points exported contracts — how you extend this code

PointerToPrismProvider (Interface)
(no doc) [8 implementers]
packages/dataverse/src/pointerToPrism.ts
IPlaybackController (Interface)
(no doc) [4 implementers]
theatre/core/src/sequences/playbackControllers/DefaultPlaybackController.ts
IBox (Interface)
(no doc) [2 implementers]
packages/dataverse-experiments/src/Box.ts
IScrubApi (Interface)
(no doc) [2 implementers]
theatre/studio/src/Scrub.ts
BroadcastData (Interface)
(no doc)
packages/playground/src/shared/remote/Remote.ts
Editable (Interface)
(no doc)
packages/r3f/src/main/store.ts
Deferred (Interface)
(no doc)
compat-tests/utils/testUtils.ts
Window (Interface)
(no doc)
theatre/globals.d.ts

Core symbols most depended-on inside this repo

val
called by 279
packages/dataverse/src/val.ts
getStudio
called by 150
theatre/studio/src/getStudio.ts
map
called by 140
packages/dataverse-experiments/src/derivations/IDerivation.ts
getValue
called by 135
packages/dataverse/src/prism/Interface.ts
get
called by 124
packages/dataverse-experiments/src/Box.ts
push
called by 102
theatre/studio/src/store/index.ts
prism
called by 94
packages/dataverse/src/prism/prism.ts
transaction
called by 81
theatre/studio/src/TheatreStudio.ts

Shape

Function 1,346
Method 536
Class 123
Interface 109
Enum 14

Languages

TypeScript100%

Modules by API surface

packages/dataverse/src/prism/prism.ts72 symbols
theatre/studio/src/TheatreStudio.ts51 symbols
packages/r3f/src/extension/components/OrbitControls/OrbitControlsImpl.ts46 symbols
theatre/shared/src/_logger/logger.ts45 symbols
theatre/studio/src/store/stateEditors.ts42 symbols
theatre/core/src/propTypes/index.ts33 symbols
theatre/core/src/sequences/Sequence.ts32 symbols
theatre/studio/src/Studio.ts29 symbols
packages/dataverse/src/Atom.ts29 symbols
packages/dataverse-experiments/src/Atom.ts27 symbols
packages/dataverse-experiments/src/derivations/prism/prism.ts24 symbols
theatre/studio/src/uiComponents/colorPicker/utils/convert.ts23 symbols

Dependencies from manifests, versioned

@actions/core1.10.0 · 1×
@cspotcode/zx6.1.2 · 1×
@microsoft/api-documenter7.19.0 · 1×
@microsoft/api-extractor7.28.6 · 1×
@playwright/test1.36.2 · 1×
@react-three/drei9.80.1 · 1×
@react-three/fiber8.13.6 · 1×
@rollup/plugin-alias3.1.5 · 1×
@rollup/plugin-multi-entry4.1.0 · 1×
@rollup/plugin-replace2.4.2 · 1×
@rollup/plugin-typescript8.2.5 · 1×
@testing-library/jest-dom5.11.4 · 1×

For agents

$ claude mcp add theatre \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact