retiam 0.0.0-stage ā 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli.js +209 -0
- package/bin/export.js +323 -0
- package/bin/init.js +425 -0
- package/bin/lint.js +354 -0
- package/bin/render.js +600 -0
- package/bin/snapshot.js +231 -0
- package/dist/UTIF-pBEih-vH.js +2845 -0
- package/dist/assets/Excalifont-Regular.woff2 +0 -0
- package/dist/assets/FiraCode-Regular.ttf +0 -0
- package/dist/assets/FrederickatheGreat-Regular.ttf +0 -0
- package/dist/assets/Virgil.woff2 +0 -0
- package/dist/assets/roboto-msdf.json +3643 -0
- package/dist/assets/roboto-msdf.png +0 -0
- package/dist/assets/roboto-regular.ttf +0 -0
- package/dist/assets/rt_hdr_alb_nrm.tza +0 -0
- package/dist/assets/worker-DKrf-Y6u.js +1231 -0
- package/dist/decompress-D5RzmD-2.js +566 -0
- package/dist/index-CnM0BhUR.js +109423 -0
- package/dist/libs/charts/cartesian/AreaChart.d.ts +12 -0
- package/dist/libs/charts/cartesian/BarChart.d.ts +39 -0
- package/dist/libs/charts/cartesian/LineChart.d.ts +44 -0
- package/dist/libs/charts/components/Tooltip.d.ts +18 -0
- package/dist/libs/charts/core/Chart.d.ts +37 -0
- package/dist/libs/charts/core/Scale.d.ts +34 -0
- package/dist/libs/charts/core/Theme.d.ts +20 -0
- package/dist/libs/charts/index.d.ts +8 -0
- package/dist/libs/charts/index.js +639 -0
- package/dist/libs/charts/polar/PieChart.d.ts +38 -0
- package/dist/libs/graphs/automata/Automaton.d.ts +46 -0
- package/dist/libs/graphs/automata/AutomatonRunner.d.ts +22 -0
- package/dist/libs/graphs/automata/Tape.d.ts +45 -0
- package/dist/libs/graphs/core/GraphEdge.d.ts +44 -0
- package/dist/libs/graphs/core/GraphNode.d.ts +41 -0
- package/dist/libs/graphs/core/GraphTheme.d.ts +35 -0
- package/dist/libs/graphs/core/Layouts.d.ts +34 -0
- package/dist/libs/graphs/graph/Graph.d.ts +50 -0
- package/dist/libs/graphs/index.d.ts +8 -0
- package/dist/libs/graphs/index.js +802 -0
- package/dist/libs/highlights/backdrop/BackdropFade.d.ts +10 -0
- package/dist/libs/highlights/backdrop/MarkerSweep.d.ts +10 -0
- package/dist/libs/highlights/boundary/BoundaryRipple.d.ts +10 -0
- package/dist/libs/highlights/boundary/Circumscribe.d.ts +10 -0
- package/dist/libs/highlights/boundary/CornerBrackets.d.ts +10 -0
- package/dist/libs/highlights/boundary/Underline.d.ts +10 -0
- package/dist/libs/highlights/core/types.d.ts +141 -0
- package/dist/libs/highlights/core/utils.d.ts +15 -0
- package/dist/libs/highlights/finish/Flash.d.ts +21 -0
- package/dist/libs/highlights/finish/FlashFinish.d.ts +10 -0
- package/dist/libs/highlights/finish/ShimmerSweep.d.ts +9 -0
- package/dist/libs/highlights/finish/SparkleBurst.d.ts +10 -0
- package/dist/libs/highlights/index.d.ts +17 -0
- package/dist/libs/highlights/index.js +435 -0
- package/dist/libs/highlights/material/Blink.d.ts +15 -0
- package/dist/libs/highlights/material/ColorTint.d.ts +9 -0
- package/dist/libs/highlights/material/PulseGlow.d.ts +9 -0
- package/dist/libs/highlights/motion/PopHighlight.d.ts +9 -0
- package/dist/libs/highlights/motion/WiggleHighlight.d.ts +9 -0
- package/dist/libs/physics/2d/Joint2D.d.ts +37 -0
- package/dist/libs/physics/2d/Physics2D.d.ts +125 -0
- package/dist/libs/physics/2d/Physics2DTypes.d.ts +185 -0
- package/dist/libs/physics/2d/Physics2DUtils.d.ts +9 -0
- package/dist/libs/physics/2d/backends/IPhysics2DBackend.d.ts +46 -0
- package/dist/libs/physics/2d/backends/Planck2DBackend.d.ts +44 -0
- package/dist/libs/physics/2d/backends/Rapier2DBackend.d.ts +46 -0
- package/dist/libs/physics/2d/components/RigidBody2DComponent.d.ts +56 -0
- package/dist/libs/physics/2d/components/SoftBody2DComponent.d.ts +19 -0
- package/dist/libs/physics/3d/Physics3D.d.ts +66 -0
- package/dist/libs/physics/3d/Physics3DTypes.d.ts +100 -0
- package/dist/libs/physics/3d/PhysicsUtils.d.ts +9 -0
- package/dist/libs/physics/3d/backends/Box3DBackend.d.ts +66 -0
- package/dist/libs/physics/3d/backends/IPhysics3DBackend.d.ts +22 -0
- package/dist/libs/physics/3d/backends/Rapier3DBackend.d.ts +33 -0
- package/dist/libs/physics/3d/components/RigidBodyComponent.d.ts +100 -0
- package/dist/libs/physics/3d/components/SoftBodyComponent.d.ts +26 -0
- package/dist/libs/physics/index.d.ts +17 -0
- package/dist/libs/physics/index.js +18697 -0
- package/dist/libs/rough/RoughModifier.d.ts +72 -0
- package/dist/libs/rough/RoughShape.d.ts +175 -0
- package/dist/libs/rough/index.d.ts +5 -0
- package/dist/libs/rough/index.js +1488 -0
- package/dist/libs/shapes/2d/Annulus.d.ts +33 -0
- package/dist/libs/shapes/2d/ArchitecturalProfile.d.ts +42 -0
- package/dist/libs/shapes/2d/Capsule.d.ts +33 -0
- package/dist/libs/shapes/2d/Chevron.d.ts +37 -0
- package/dist/libs/shapes/2d/Crescent.d.ts +27 -0
- package/dist/libs/shapes/2d/Cross.d.ts +32 -0
- package/dist/libs/shapes/2d/CurvedArrow.d.ts +53 -0
- package/dist/libs/shapes/2d/Diamond.d.ts +32 -0
- package/dist/libs/shapes/2d/DoubleArrow.d.ts +28 -0
- package/dist/libs/shapes/2d/Gear2D.d.ts +42 -0
- package/dist/libs/shapes/2d/Heart.d.ts +28 -0
- package/dist/libs/shapes/2d/Parallelogram.d.ts +37 -0
- package/dist/libs/shapes/2d/RegularPolygon.d.ts +41 -0
- package/dist/libs/shapes/2d/Sector.d.ts +27 -0
- package/dist/libs/shapes/2d/Spiral2D.d.ts +42 -0
- package/dist/libs/shapes/2d/Squircle.d.ts +39 -0
- package/dist/libs/shapes/2d/Star.d.ts +47 -0
- package/dist/libs/shapes/2d/Teardrop.d.ts +27 -0
- package/dist/libs/shapes/2d/Trapezoid.d.ts +37 -0
- package/dist/libs/shapes/2d/Waveform2D.d.ts +47 -0
- package/dist/libs/shapes/2d/index.d.ts +20 -0
- package/dist/libs/shapes/3d/Bipyramid3D.d.ts +27 -0
- package/dist/libs/shapes/3d/Capsule3D.d.ts +33 -0
- package/dist/libs/shapes/3d/Diamond3D.d.ts +42 -0
- package/dist/libs/shapes/3d/Ellipsoid3D.d.ts +37 -0
- package/dist/libs/shapes/3d/Gear3D.d.ts +42 -0
- package/dist/libs/shapes/3d/Helix3D.d.ts +43 -0
- package/dist/libs/shapes/3d/PlatonicSolids.d.ts +42 -0
- package/dist/libs/shapes/3d/Prism3D.d.ts +32 -0
- package/dist/libs/shapes/3d/Pyramid3D.d.ts +32 -0
- package/dist/libs/shapes/3d/RoundedBox3D.d.ts +37 -0
- package/dist/libs/shapes/3d/Superellipsoid3D.d.ts +48 -0
- package/dist/libs/shapes/3d/TorusKnot3D.d.ts +42 -0
- package/dist/libs/shapes/3d/TruncatedCone3D.d.ts +37 -0
- package/dist/libs/shapes/3d/Tube3D.d.ts +39 -0
- package/dist/libs/shapes/3d/Wedge3D.d.ts +27 -0
- package/dist/libs/shapes/3d/index.d.ts +15 -0
- package/dist/libs/shapes/index.d.ts +8 -0
- package/dist/libs/shapes/index.js +3196 -0
- package/dist/libs/shapes/types.d.ts +32 -0
- package/dist/libs/shapes/utils/index.d.ts +2 -0
- package/dist/libs/shapes/utils/meshGenerators.d.ts +71 -0
- package/dist/libs/shapes/utils/pathCalculations.d.ts +81 -0
- package/dist/libs/tts/animations/Speak.d.ts +79 -0
- package/dist/libs/tts/components/Subtitles.d.ts +141 -0
- package/dist/libs/tts/components/TTSNarrationComponent.d.ts +57 -0
- package/dist/libs/tts/core/MsEdgeVoices.d.ts +29 -0
- package/dist/libs/tts/core/TTSAudio.d.ts +80 -0
- package/dist/libs/tts/core/TTSCache.d.ts +15 -0
- package/dist/libs/tts/core/TTSClient.d.ts +66 -0
- package/dist/libs/tts/core/mp3Utils.d.ts +19 -0
- package/dist/libs/tts/core/msEdgeV2.d.ts +4 -0
- package/dist/libs/tts/core/types.d.ts +84 -0
- package/dist/libs/tts/index.d.ts +16 -0
- package/dist/libs/tts/index.js +1611 -0
- package/dist/libs/tts/providers/ITTSProvider.d.ts +30 -0
- package/dist/libs/tts/providers/MsEdgeTTSProvider.d.ts +61 -0
- package/dist/main-Bw2LTrnR.js +22927 -0
- package/dist/opentype.module-D6jx0UDN.js +8689 -0
- package/dist/retiam.es.js +814 -0
- package/dist/src/engine/_core/Always.d.ts +181 -0
- package/dist/src/engine/_core/Component.d.ts +43 -0
- package/dist/src/engine/_core/Constants.d.ts +168 -0
- package/dist/src/engine/_core/Entity.d.ts +725 -0
- package/dist/src/engine/_core/Fill.d.ts +34 -0
- package/dist/src/engine/_core/Group.d.ts +88 -0
- package/dist/src/engine/_core/IPlugin.d.ts +44 -0
- package/dist/src/engine/_core/Interfaces.d.ts +50 -0
- package/dist/src/engine/_core/Material.d.ts +184 -0
- package/dist/src/engine/_core/OfflineRenderManager.d.ts +10 -0
- package/dist/src/engine/_core/Paint.d.ts +155 -0
- package/dist/src/engine/_core/Scene.d.ts +399 -0
- package/dist/src/engine/_core/SceneComposer.d.ts +269 -0
- package/dist/src/engine/_core/SceneInterface.d.ts +55 -0
- package/dist/src/engine/_core/SnapshotManager.d.ts +56 -0
- package/dist/src/engine/_core/State.d.ts +106 -0
- package/dist/src/engine/_core/StateDataManager.d.ts +61 -0
- package/dist/src/engine/_core/TextureManager.d.ts +20 -0
- package/dist/src/engine/_core/Transform.d.ts +344 -0
- package/dist/src/engine/_core/UIManager.d.ts +28 -0
- package/dist/src/engine/_core/VectorEntity.d.ts +151 -0
- package/dist/src/engine/_core/VideoData.d.ts +47 -0
- package/dist/src/engine/animation/AnimOptions.d.ts +93 -0
- package/dist/src/engine/animation/Animation.d.ts +134 -0
- package/dist/src/engine/animation/AnimationFrameScheduler.d.ts +26 -0
- package/dist/src/engine/animation/AnimationFunctions.d.ts +105 -0
- package/dist/src/engine/animation/Animator.d.ts +153 -0
- package/dist/src/engine/animation/BlurIn.d.ts +40 -0
- package/dist/src/engine/animation/BlurOut.d.ts +41 -0
- package/dist/src/engine/animation/BlurPulse.d.ts +33 -0
- package/dist/src/engine/animation/BlurTarget.d.ts +25 -0
- package/dist/src/engine/animation/BlurTo.d.ts +30 -0
- package/dist/src/engine/animation/Concurrent.d.ts +52 -0
- package/dist/src/engine/animation/CustomAnimation.d.ts +24 -0
- package/dist/src/engine/animation/Delay.d.ts +68 -0
- package/dist/src/engine/animation/FadeIn.d.ts +7 -0
- package/dist/src/engine/animation/FadeOut.d.ts +17 -0
- package/dist/src/engine/animation/GroupAnimator.d.ts +106 -0
- package/dist/src/engine/animation/Rate.d.ts +80 -0
- package/dist/src/engine/animation/Sequential.d.ts +29 -0
- package/dist/src/engine/animation/StateAnimation.d.ts +46 -0
- package/dist/src/engine/animation/TrackAnimation.d.ts +22 -0
- package/dist/src/engine/animation/TrackBuilder.d.ts +44 -0
- package/dist/src/engine/animation/Waiting.d.ts +32 -0
- package/dist/src/engine/animation/Write.d.ts +8 -0
- package/dist/src/engine/animation/camera/CameraDollyZoom.d.ts +18 -0
- package/dist/src/engine/animation/camera/CameraLookAt.d.ts +18 -0
- package/dist/src/engine/animation/camera/CameraMove.d.ts +24 -0
- package/dist/src/engine/animation/camera/CameraOrbit.d.ts +19 -0
- package/dist/src/engine/animation/creation/AppearInstant.d.ts +30 -0
- package/dist/src/engine/animation/creation/BatchIntroduce.d.ts +36 -0
- package/dist/src/engine/animation/creation/BloomIn.d.ts +46 -0
- package/dist/src/engine/animation/creation/BurstIn.d.ts +42 -0
- package/dist/src/engine/animation/creation/CascadeIn.d.ts +64 -0
- package/dist/src/engine/animation/creation/Create.d.ts +38 -0
- package/dist/src/engine/animation/creation/Create3D.d.ts +12 -0
- package/dist/src/engine/animation/creation/CrystallizeIn.d.ts +46 -0
- package/dist/src/engine/animation/creation/DrawBorderOnly.d.ts +27 -0
- package/dist/src/engine/animation/creation/DrawBorderThenFill.d.ts +24 -0
- package/dist/src/engine/animation/creation/DropIn.d.ts +29 -0
- package/dist/src/engine/animation/creation/EraseIn.d.ts +48 -0
- package/dist/src/engine/animation/creation/GlowIn.d.ts +56 -0
- package/dist/src/engine/animation/creation/GrowFromCenter.d.ts +27 -0
- package/dist/src/engine/animation/creation/GrowFromEdge.d.ts +33 -0
- package/dist/src/engine/animation/creation/IrisIn.d.ts +38 -0
- package/dist/src/engine/animation/creation/MaterializeFrom.d.ts +50 -0
- package/dist/src/engine/animation/creation/PopIn.d.ts +45 -0
- package/dist/src/engine/animation/creation/RevealFromClip.d.ts +36 -0
- package/dist/src/engine/animation/creation/ScatterAssemble.d.ts +51 -0
- package/dist/src/engine/animation/creation/ShimmerIn.d.ts +52 -0
- package/dist/src/engine/animation/creation/SlideIn.d.ts +33 -0
- package/dist/src/engine/animation/creation/SpinIn.d.ts +45 -0
- package/dist/src/engine/animation/creation/StaggerWrite.d.ts +31 -0
- package/dist/src/engine/animation/creation/TelegraphThenReveal.d.ts +56 -0
- package/dist/src/engine/animation/creation/TraceBack.d.ts +46 -0
- package/dist/src/engine/animation/creation/TransmitIn.d.ts +46 -0
- package/dist/src/engine/animation/creation/Typewriter.d.ts +149 -0
- package/dist/src/engine/animation/creation/TypewriterIn.d.ts +93 -0
- package/dist/src/engine/animation/creation/Uncreate.d.ts +34 -0
- package/dist/src/engine/animation/creation/UnfoldFromCenter.d.ts +40 -0
- package/dist/src/engine/animation/creation/Unwrite.d.ts +18 -0
- package/dist/src/engine/animation/creation/WaveIn.d.ts +46 -0
- package/dist/src/engine/animation/creation/WipeIn.d.ts +50 -0
- package/dist/src/engine/animation/layout/ArrangeReveal.d.ts +51 -0
- package/dist/src/engine/animation/layout/ArrangeRipple.d.ts +51 -0
- package/dist/src/engine/animation/layout/MorphArrange.d.ts +38 -0
- package/dist/src/engine/animation/motion/LissajousAnimation.d.ts +50 -0
- package/dist/src/engine/animation/motion/MotionPath.d.ts +73 -0
- package/dist/src/engine/animation/motion/OrbitAnimation.d.ts +41 -0
- package/dist/src/engine/animation/motion/ShakeAnimation.d.ts +37 -0
- package/dist/src/engine/animation/motion/SpiralAnimation.d.ts +49 -0
- package/dist/src/engine/animation/motion/SplineAnimation.d.ts +107 -0
- package/dist/src/engine/animation/motion/SpringAnimation.d.ts +50 -0
- package/dist/src/engine/animation/transform/HomotopyAnimation.d.ts +23 -0
- package/dist/src/engine/animation/transform/ModelTransform.d.ts +19 -0
- package/dist/src/engine/animation/transform/Morph.d.ts +18 -0
- package/dist/src/engine/animation/transform/SDF3DTransform.d.ts +12 -0
- package/dist/src/engine/animation/transform/SpaceTransform.d.ts +14 -0
- package/dist/src/engine/animation/transform/TransformMatch.d.ts +14 -0
- package/dist/src/engine/animation/transform/TransformMatchingShapes.d.ts +21 -0
- package/dist/src/engine/animation/transform/TransformMatchingTex.d.ts +17 -0
- package/dist/src/engine/animation/transform/TransformMatchingText.d.ts +19 -0
- package/dist/src/engine/animation/transform/VectorTransform.d.ts +22 -0
- package/dist/src/engine/audio/AudioAnalyzer.d.ts +80 -0
- package/dist/src/engine/audio/AudioLoader.d.ts +29 -0
- package/dist/src/engine/audio/AudioManager.d.ts +186 -0
- package/dist/src/engine/audio/AudioPlugin.d.ts +46 -0
- package/dist/src/engine/audio/AudioTimeline.d.ts +111 -0
- package/dist/src/engine/audio/audioUtils.d.ts +8 -0
- package/dist/src/engine/audio/components/AudioListenerComponent.d.ts +11 -0
- package/dist/src/engine/audio/components/SpatialAudioComponent.d.ts +48 -0
- package/dist/src/engine/audio/index.d.ts +8 -0
- package/dist/src/engine/camera/Camera.d.ts +293 -0
- package/dist/src/engine/camera/Camera2DController.d.ts +393 -0
- package/dist/src/engine/camera/CameraController.d.ts +78 -0
- package/dist/src/engine/camera/OrbitCameraController.d.ts +138 -0
- package/dist/src/engine/camera/RenderView.d.ts +73 -0
- package/dist/src/engine/components/FragmentComponent.d.ts +30 -0
- package/dist/src/engine/components/GeometryComponent.d.ts +52 -0
- package/dist/src/engine/components/InteractionComponent.d.ts +47 -0
- package/dist/src/engine/components/RendererComponent.d.ts +38 -0
- package/dist/src/engine/components/fragment/Fragment2D.d.ts +10 -0
- package/dist/src/engine/components/fragment/IndexFragment2D.d.ts +10 -0
- package/dist/src/engine/components/fragment/Line3DFragment.d.ts +16 -0
- package/dist/src/engine/components/fragment/LineFragment.d.ts +5 -0
- package/dist/src/engine/components/fragment/ManimSurfaceFragment.d.ts +13 -0
- package/dist/src/engine/components/fragment/MathSurfaceFragment.d.ts +6 -0
- package/dist/src/engine/components/fragment/ModelFragment.d.ts +20 -0
- package/dist/src/engine/components/fragment/ParametricSurfaceFragment.d.ts +24 -0
- package/dist/src/engine/components/fragment/PathFragment.d.ts +37 -0
- package/dist/src/engine/components/fragment/PolyFragment.d.ts +20 -0
- package/dist/src/engine/components/fragment/SDF2DFragment.d.ts +22 -0
- package/dist/src/engine/components/fragment/SDFFragment.d.ts +25 -0
- package/dist/src/engine/components/fragment/ShaderFragment.d.ts +12 -0
- package/dist/src/engine/components/fragment/SplatFragment.d.ts +14 -0
- package/dist/src/engine/components/fragment/SpriteFragment.d.ts +30 -0
- package/dist/src/engine/components/fragment/SurfaceFragment.d.ts +16 -0
- package/dist/src/engine/components/fragment/TextFragment.d.ts +15 -0
- package/dist/src/engine/components/fragment/TriangulatedPathFragment.d.ts +14 -0
- package/dist/src/engine/components/geometry/BezierGeometry.d.ts +27 -0
- package/dist/src/engine/components/geometry/DeformableMeshGeometry.d.ts +31 -0
- package/dist/src/engine/components/geometry/Geometry2D.d.ts +18 -0
- package/dist/src/engine/components/geometry/IndexGeometry2D.d.ts +26 -0
- package/dist/src/engine/components/geometry/Line3DGeometry.d.ts +27 -0
- package/dist/src/engine/components/geometry/LineGeometry.d.ts +15 -0
- package/dist/src/engine/components/geometry/ModelGeometry.d.ts +29 -0
- package/dist/src/engine/components/geometry/MorphGeometry.d.ts +44 -0
- package/dist/src/engine/components/geometry/PathGeometry.d.ts +73 -0
- package/dist/src/engine/components/geometry/PolyGeometry.d.ts +31 -0
- package/dist/src/engine/components/geometry/QuadGeometry.d.ts +26 -0
- package/dist/src/engine/components/geometry/TextGeometry.d.ts +23 -0
- package/dist/src/engine/components/geometry/TriangulatedPathGeometry.d.ts +116 -0
- package/dist/src/engine/components/geometry/morph/DualContouringProcessor.d.ts +11 -0
- package/dist/src/engine/components/geometry/morph/MorphProcessor.d.ts +12 -0
- package/dist/src/engine/components/geometry/morph/NaiveProcessor.d.ts +6 -0
- package/dist/src/engine/components/geometry/morph/SdfVolumetricProcessor.d.ts +12 -0
- package/dist/src/engine/components/geometry/morph/SwarmProcessor.d.ts +9 -0
- package/dist/src/engine/components/renderers/MeshRenderer.d.ts +8 -0
- package/dist/src/engine/components/renderers/ModelRenderer.d.ts +9 -0
- package/dist/src/engine/components/renderers/PathRenderer.d.ts +9 -0
- package/dist/src/engine/components/renderers/TriangulatedPathRenderer.d.ts +32 -0
- package/dist/src/engine/compute/Compute.d.ts +322 -0
- package/dist/src/engine/compute/ComputeKernel.d.ts +39 -0
- package/dist/src/engine/control/InputRecorder.d.ts +62 -0
- package/dist/src/engine/control/InteractionManager.d.ts +49 -0
- package/dist/src/engine/control/PlayerControls.d.ts +60 -0
- package/dist/src/engine/control/menu.d.ts +56 -0
- package/dist/src/engine/entities/Instanced.d.ts +114 -0
- package/dist/src/engine/entities/SubScene.d.ts +10 -0
- package/dist/src/engine/entities/composites/PlotPrimitiveFactory.d.ts +22 -0
- package/dist/src/engine/entities/composites/PlotPrimitiveType.d.ts +15 -0
- package/dist/src/engine/entities/composites/coordinates/Axes.d.ts +88 -0
- package/dist/src/engine/entities/composites/coordinates/ComplexPlane.d.ts +49 -0
- package/dist/src/engine/entities/composites/coordinates/CoordinateSystem.d.ts +130 -0
- package/dist/src/engine/entities/composites/coordinates/NumberPlane.d.ts +129 -0
- package/dist/src/engine/entities/composites/coordinates/PolarAxes.d.ts +84 -0
- package/dist/src/engine/entities/composites/coordinates/ThreeDAxes.d.ts +74 -0
- package/dist/src/engine/entities/composites/geometry/Arrow.d.ts +109 -0
- package/dist/src/engine/entities/composites/geometry/Arrow3D.d.ts +34 -0
- package/dist/src/engine/entities/composites/geometry/BooleanOps.d.ts +40 -0
- package/dist/src/engine/entities/composites/geometry/Brace.d.ts +31 -0
- package/dist/src/engine/entities/composites/geometry/MathShape3D.d.ts +36 -0
- package/dist/src/engine/entities/composites/geometry/MeshSprite.d.ts +66 -0
- package/dist/src/engine/entities/composites/geometry/PixelGrid.d.ts +51 -0
- package/dist/src/engine/entities/composites/plotting/Calculus.d.ts +64 -0
- package/dist/src/engine/entities/composites/plotting/FunctionGraph2D.d.ts +48 -0
- package/dist/src/engine/entities/composites/plotting/ImplicitCurve2D.d.ts +39 -0
- package/dist/src/engine/entities/composites/plotting/ImplicitCurve2DGPU.d.ts +20 -0
- package/dist/src/engine/entities/composites/plotting/ImplicitSurface3D.d.ts +32 -0
- package/dist/src/engine/entities/composites/plotting/ParametricCurve2D.d.ts +49 -0
- package/dist/src/engine/entities/composites/plotting/ParametricCurve3D.d.ts +40 -0
- package/dist/src/engine/entities/composites/plotting/ParametricSurface3D.d.ts +42 -0
- package/dist/src/engine/entities/composites/plotting/PolarCurve.d.ts +26 -0
- package/dist/src/engine/entities/composites/plotting/RaymarchPlot3D.d.ts +65 -0
- package/dist/src/engine/entities/composites/plotting/Streamlines2D.d.ts +29 -0
- package/dist/src/engine/entities/composites/plotting/SurfaceGraph3D.d.ts +29 -0
- package/dist/src/engine/entities/composites/plotting/VectorField2D.d.ts +23 -0
- package/dist/src/engine/entities/composites/plotting/VectorField3D.d.ts +20 -0
- package/dist/src/engine/entities/composites/svg/SVG.d.ts +32 -0
- package/dist/src/engine/entities/composites/svg/SVGPath.d.ts +12 -0
- package/dist/src/engine/entities/composites/text/Code.d.ts +197 -0
- package/dist/src/engine/entities/composites/text/MarkupText.d.ts +175 -0
- package/dist/src/engine/entities/composites/text/SDFText.d.ts +92 -0
- package/dist/src/engine/entities/composites/text/Tex.d.ts +80 -0
- package/dist/src/engine/entities/composites/text/TexFontPatcher.d.ts +15 -0
- package/dist/src/engine/entities/composites/text/Text.d.ts +91 -0
- package/dist/src/engine/entities/composites/text/TextSplitter.d.ts +44 -0
- package/dist/src/engine/entities/composites/text/excalifontMathJaxData.d.ts +8 -0
- package/dist/src/engine/entities/composites/text/virgilMathJaxData.d.ts +3 -0
- package/dist/src/engine/entities/composites/trackers/ValueTrackers.d.ts +14 -0
- package/dist/src/engine/entities/composites/trackers/alwaysRedraw.d.ts +8 -0
- package/dist/src/engine/entities/layout/Arrange.d.ts +359 -0
- package/dist/src/engine/entities/layout/FeedbackZoomView.d.ts +25 -0
- package/dist/src/engine/entities/layout/HBox.d.ts +80 -0
- package/dist/src/engine/entities/layout/Mask.d.ts +17 -0
- package/dist/src/engine/entities/layout/VBox.d.ts +80 -0
- package/dist/src/engine/entities/layout/VGroup.d.ts +17 -0
- package/dist/src/engine/entities/layout/ZoomView.d.ts +49 -0
- package/dist/src/engine/entities/primitives/2d/AnimatedSprite.d.ts +28 -0
- package/dist/src/engine/entities/primitives/2d/Arc.d.ts +51 -0
- package/dist/src/engine/entities/primitives/2d/Bezier.d.ts +102 -0
- package/dist/src/engine/entities/primitives/2d/Circle.d.ts +20 -0
- package/dist/src/engine/entities/primitives/2d/Dot.d.ts +274 -0
- package/dist/src/engine/entities/primitives/2d/Ellipse.d.ts +14 -0
- package/dist/src/engine/entities/primitives/2d/Line.d.ts +72 -0
- package/dist/src/engine/entities/primitives/2d/Mesh2D.d.ts +44 -0
- package/dist/src/engine/entities/primitives/2d/Path.d.ts +328 -0
- package/dist/src/engine/entities/primitives/2d/Poly.d.ts +73 -0
- package/dist/src/engine/entities/primitives/2d/Rect.d.ts +37 -0
- package/dist/src/engine/entities/primitives/2d/SDF2D.d.ts +125 -0
- package/dist/src/engine/entities/primitives/2d/Shader.d.ts +77 -0
- package/dist/src/engine/entities/primitives/2d/Spline.d.ts +122 -0
- package/dist/src/engine/entities/primitives/2d/Spring.d.ts +135 -0
- package/dist/src/engine/entities/primitives/2d/Sprite.d.ts +27 -0
- package/dist/src/engine/entities/primitives/2d/Triangle.d.ts +44 -0
- package/dist/src/engine/entities/primitives/2d/curves/BSplineEvaluator.d.ts +20 -0
- package/dist/src/engine/entities/primitives/2d/curves/BezierEvaluator.d.ts +21 -0
- package/dist/src/engine/entities/primitives/2d/curves/CatmullRomEvaluator.d.ts +20 -0
- package/dist/src/engine/entities/primitives/2d/curves/CurveEvaluator.d.ts +68 -0
- package/dist/src/engine/entities/primitives/2d/curves/HermiteEvaluator.d.ts +19 -0
- package/dist/src/engine/entities/primitives/2d/curves/NaturalSplineEvaluator.d.ts +31 -0
- package/dist/src/engine/entities/primitives/2d/sdf/SDFCircle.d.ts +53 -0
- package/dist/src/engine/entities/primitives/3d/Box.d.ts +9 -0
- package/dist/src/engine/entities/primitives/3d/Cone.d.ts +6 -0
- package/dist/src/engine/entities/primitives/3d/Cylinder.d.ts +13 -0
- package/dist/src/engine/entities/primitives/3d/Environment.d.ts +8 -0
- package/dist/src/engine/entities/primitives/3d/Light.d.ts +8 -0
- package/dist/src/engine/entities/primitives/3d/Line3D.d.ts +78 -0
- package/dist/src/engine/entities/primitives/3d/Model.d.ts +79 -0
- package/dist/src/engine/entities/primitives/3d/MorphModel.d.ts +13 -0
- package/dist/src/engine/entities/primitives/3d/MorphOptions.d.ts +132 -0
- package/dist/src/engine/entities/primitives/3d/ParametricModel.d.ts +36 -0
- package/dist/src/engine/entities/primitives/3d/Plane.d.ts +30 -0
- package/dist/src/engine/entities/primitives/3d/RTHTML.d.ts +47 -0
- package/dist/src/engine/entities/primitives/3d/RTImage.d.ts +7 -0
- package/dist/src/engine/entities/primitives/3d/RTVideo.d.ts +12 -0
- package/dist/src/engine/entities/primitives/3d/SDFVolume.d.ts +7 -0
- package/dist/src/engine/entities/primitives/3d/Sphere.d.ts +9 -0
- package/dist/src/engine/entities/primitives/3d/Terrain3D.d.ts +39 -0
- package/dist/src/engine/entities/primitives/3d/Torus.d.ts +8 -0
- package/dist/src/engine/entities/primitives/3d/TracePath.d.ts +38 -0
- package/dist/src/engine/entities/sdf/SDFEntity3D.d.ts +13 -0
- package/dist/src/engine/entities/sdf/SDFMorph3D.d.ts +12 -0
- package/dist/src/engine/entities/sdf/SDFNode.d.ts +148 -0
- package/dist/src/engine/font/Font.d.ts +39 -0
- package/dist/src/engine/font/FontCache.d.ts +31 -0
- package/dist/src/engine/font/FontLoader.d.ts +38 -0
- package/dist/src/engine/font/FontResolver.d.ts +27 -0
- package/dist/src/engine/font/MSDFGenerator.d.ts +28 -0
- package/dist/src/engine/font/types.d.ts +76 -0
- package/dist/src/engine/loader/SubTexture.d.ts +61 -0
- package/dist/src/engine/loader/TextureAtlas.d.ts +84 -0
- package/dist/src/engine/material/FillEffect.d.ts +108 -0
- package/dist/src/engine/material/FillEffectBase.d.ts +34 -0
- package/dist/src/engine/material/PathEffect.d.ts +254 -0
- package/dist/src/engine/material/PathEffectBase.d.ts +34 -0
- package/dist/src/engine/material/fill_effects/CheckerboardFillEffect.d.ts +8 -0
- package/dist/src/engine/material/fill_effects/CustomFillEffect.d.ts +11 -0
- package/dist/src/engine/material/fill_effects/DotsFillEffect.d.ts +8 -0
- package/dist/src/engine/material/fill_effects/GlowFillEffect.d.ts +22 -0
- package/dist/src/engine/material/fill_effects/LinearGradientFillEffect.d.ts +8 -0
- package/dist/src/engine/material/fill_effects/OpacityFillEffect.d.ts +7 -0
- package/dist/src/engine/material/fill_effects/RadialGradientFillEffect.d.ts +8 -0
- package/dist/src/engine/material/fill_effects/SolidFillEffect.d.ts +7 -0
- package/dist/src/engine/material/fill_effects/StripesFillEffect.d.ts +8 -0
- package/dist/src/engine/material/fill_effects/TintFillEffect.d.ts +8 -0
- package/dist/src/engine/material/fill_effects/VignetteFillEffect.d.ts +7 -0
- package/dist/src/engine/material/fill_effects/colorMixer.d.ts +5 -0
- package/dist/src/engine/material/fill_effects/glowShader.d.ts +31 -0
- package/dist/src/engine/material/fill_effects/index.d.ts +13 -0
- package/dist/src/engine/material/fills/GradientFill.d.ts +32 -0
- package/dist/src/engine/material/fills/SolidFill.d.ts +6 -0
- package/dist/src/engine/material/fills/TextureFill.d.ts +24 -0
- package/dist/src/engine/material/fills/VideoFill.d.ts +12 -0
- package/dist/src/engine/material/path_effects/BrushEffect.d.ts +24 -0
- package/dist/src/engine/material/path_effects/CalligraphicEffect.d.ts +23 -0
- package/dist/src/engine/material/path_effects/ChalkEffect.d.ts +58 -0
- package/dist/src/engine/material/path_effects/CustomPathEffect.d.ts +11 -0
- package/dist/src/engine/material/path_effects/DashEffect.d.ts +14 -0
- package/dist/src/engine/material/path_effects/DynamicStrokeEffect.d.ts +25 -0
- package/dist/src/engine/material/path_effects/FluidEffect.d.ts +21 -0
- package/dist/src/engine/material/path_effects/GlowPathEffect.d.ts +7 -0
- package/dist/src/engine/material/path_effects/GradientPathEffect.d.ts +8 -0
- package/dist/src/engine/material/path_effects/OpacityPathEffect.d.ts +7 -0
- package/dist/src/engine/material/path_effects/PencilEffect.d.ts +22 -0
- package/dist/src/engine/material/path_effects/SketchEffect.d.ts +31 -0
- package/dist/src/engine/material/path_effects/SolidPathEffect.d.ts +7 -0
- package/dist/src/engine/material/path_effects/SpontaneousEffect.d.ts +23 -0
- package/dist/src/engine/material/path_effects/TaperEffect.d.ts +19 -0
- package/dist/src/engine/material/path_effects/WaveEffect.d.ts +7 -0
- package/dist/src/engine/material/path_effects/chalkShader.d.ts +36 -0
- package/dist/src/engine/material/path_effects/dynamicStrokeShader.d.ts +165 -0
- package/dist/src/engine/material/path_effects/index.d.ts +18 -0
- package/dist/src/engine/material/path_effects/sketchShader.d.ts +41 -0
- package/dist/src/engine/math/AABB.d.ts +95 -0
- package/dist/src/engine/math/Color.d.ts +221 -0
- package/dist/src/engine/math/Complex.d.ts +51 -0
- package/dist/src/engine/math/FourierTransform.d.ts +120 -0
- package/dist/src/engine/math/Frustum.d.ts +30 -0
- package/dist/src/engine/math/Math3D.d.ts +121 -0
- package/dist/src/engine/math/fields/SpatialField.d.ts +37 -0
- package/dist/src/engine/math/fields/StandardFields.d.ts +146 -0
- package/dist/src/engine/math/noise/BaseNoise.d.ts +80 -0
- package/dist/src/engine/math/noise/Noise.d.ts +55 -0
- package/dist/src/engine/math/noise/NoiseParams.d.ts +42 -0
- package/dist/src/engine/math/noise/NoiseScaler.d.ts +48 -0
- package/dist/src/engine/math/noise/PerlinNoise.d.ts +17 -0
- package/dist/src/engine/math/noise/SimplexNoise.d.ts +12 -0
- package/dist/src/engine/math/noise/ValueNoise.d.ts +15 -0
- package/dist/src/engine/math/noise/WhiteNoise.d.ts +13 -0
- package/dist/src/engine/math/noise/WorleyNoise.d.ts +20 -0
- package/dist/src/engine/math/vector/GPUData.d.ts +5 -0
- package/dist/src/engine/math/vector/Mat3.d.ts +111 -0
- package/dist/src/engine/math/vector/Mat4.d.ts +209 -0
- package/dist/src/engine/math/vector/Point.d.ts +38 -0
- package/dist/src/engine/math/vector/Quaternion.d.ts +83 -0
- package/dist/src/engine/math/vector/Vec2.d.ts +118 -0
- package/dist/src/engine/math/vector/Vec3.d.ts +120 -0
- package/dist/src/engine/modifiers/IPathModifier.d.ts +41 -0
- package/dist/src/engine/modifiers/PathModifier.d.ts +113 -0
- package/dist/src/engine/modifiers/PathModifierBase.d.ts +41 -0
- package/dist/src/engine/modifiers/PathModifierPipeline.d.ts +52 -0
- package/dist/src/engine/modifiers/path/CustomModifier.d.ts +14 -0
- package/dist/src/engine/modifiers/path/DashModifier.d.ts +23 -0
- package/dist/src/engine/modifiers/path/ExcalidrawModifier.d.ts +29 -0
- package/dist/src/engine/modifiers/path/OffsetModifier.d.ts +42 -0
- package/dist/src/engine/modifiers/path/PathModifierUtils.d.ts +50 -0
- package/dist/src/engine/modifiers/path/PuckerBloatModifier.d.ts +22 -0
- package/dist/src/engine/modifiers/path/ResampleModifier.d.ts +23 -0
- package/dist/src/engine/modifiers/path/ReverseModifier.d.ts +10 -0
- package/dist/src/engine/modifiers/path/RoundCornersModifier.d.ts +22 -0
- package/dist/src/engine/modifiers/path/SmoothModifier.d.ts +25 -0
- package/dist/src/engine/modifiers/path/TrimModifier.d.ts +40 -0
- package/dist/src/engine/modifiers/path/TwistModifier.d.ts +28 -0
- package/dist/src/engine/modifiers/path/WiggleModifier.d.ts +52 -0
- package/dist/src/engine/modifiers/path/WobbleModifier.d.ts +132 -0
- package/dist/src/engine/modifiers/path/ZigZagModifier.d.ts +33 -0
- package/dist/src/engine/recorder/OfflineRecorder.d.ts +11 -0
- package/dist/src/engine/recorder/Recorder.d.ts +65 -0
- package/dist/src/engine/render/RenderConfig.d.ts +65 -0
- package/dist/src/engine/render/RenderStateCache.d.ts +39 -0
- package/dist/src/engine/render/RenderTarget.d.ts +141 -0
- package/dist/src/engine/render/Renderer.d.ts +67 -0
- package/dist/src/engine/render/allocator/DirtyBufferTracker.d.ts +70 -0
- package/dist/src/engine/render/allocator/GPUStrokePipeline.d.ts +67 -0
- package/dist/src/engine/render/allocator/GlobalAnalyticalAllocator.d.ts +78 -0
- package/dist/src/engine/render/allocator/GlobalAnalyticalPipeline.d.ts +43 -0
- package/dist/src/engine/render/allocator/GlobalGeometryAllocator.d.ts +140 -0
- package/dist/src/engine/render/allocator/GlobalStateAllocator.d.ts +70 -0
- package/dist/src/engine/render/allocator/MegaDrawBatchManager.d.ts +45 -0
- package/dist/src/engine/render/features/CoreFeatures.d.ts +28 -0
- package/dist/src/engine/render/frame_graph/FrameGraph.d.ts +30 -0
- package/dist/src/engine/render/frame_graph/GraphBuilder.d.ts +11 -0
- package/dist/src/engine/render/frame_graph/Pass.d.ts +27 -0
- package/dist/src/engine/render/frame_graph/RenderContext.d.ts +13 -0
- package/dist/src/engine/render/frame_graph/Resource.d.ts +70 -0
- package/dist/src/engine/render/frame_graph/ResourcePool.d.ts +14 -0
- package/dist/src/engine/render/passes/AntiAliasingPass.d.ts +25 -0
- package/dist/src/engine/render/passes/BlurPass.d.ts +49 -0
- package/dist/src/engine/render/passes/ComputeUpdate.d.ts +8 -0
- package/dist/src/engine/render/passes/CreateTexturePass.d.ts +14 -0
- package/dist/src/engine/render/passes/CustomComputePass.d.ts +14 -0
- package/dist/src/engine/render/passes/FeedbackPass.d.ts +39 -0
- package/dist/src/engine/render/passes/OffscreenRenderPass.d.ts +49 -0
- package/dist/src/engine/render/passes/PPLLCompositePass.d.ts +13 -0
- package/dist/src/engine/render/passes/PPLLPreparePass.d.ts +12 -0
- package/dist/src/engine/render/passes/PersistentRenderTexture.d.ts +53 -0
- package/dist/src/engine/render/passes/PostProcessPass.d.ts +17 -0
- package/dist/src/engine/render/passes/PresentPass.d.ts +12 -0
- package/dist/src/engine/render/passes/RaytracePasses.d.ts +42 -0
- package/dist/src/engine/render/passes/RenderPass.d.ts +33 -0
- package/dist/src/engine/render/passes/ShadowPass.d.ts +19 -0
- package/dist/src/engine/render/passes/denoisers/OIDNDenoisePass.d.ts +28 -0
- package/dist/src/engine/render/passes/denoisers/SpatialDenoisePass.d.ts +12 -0
- package/dist/src/engine/render/pipelines/PipeLineDescriptors.d.ts +56 -0
- package/dist/src/engine/render/pipelines/Pipeline.d.ts +27 -0
- package/dist/src/engine/render/pipelines/ResourceLayouts.d.ts +37 -0
- package/dist/src/engine/render/pipelines/WGSLReflector.d.ts +25 -0
- package/dist/src/engine/render/ppll_oit/PPLLManager.d.ts +25 -0
- package/dist/src/engine/render/ppll_oit/PPLLManagerGlobal.d.ts +17 -0
- package/dist/src/engine/render/ppll_oit/PPLLManagerLocal.d.ts +12 -0
- package/dist/src/engine/render/raytrace/BVHBuilder.d.ts +13 -0
- package/dist/src/engine/render/raytrace/GPUArena.d.ts +22 -0
- package/dist/src/engine/render/raytrace/RaytraceManager.d.ts +36 -0
- package/dist/src/engine/render/raytrace/RaytraceShaders.d.ts +5 -0
- package/dist/src/engine/render/shader_system/ChunkRegistry.d.ts +25 -0
- package/dist/src/engine/render/shader_system/Domains.d.ts +12 -0
- package/dist/src/engine/render/shader_system/PipelineCache.d.ts +20 -0
- package/dist/src/engine/render/shader_system/ShaderBuilder.d.ts +61 -0
- package/dist/src/engine/render/shader_system/schemas/Schemas.d.ts +2 -0
- package/dist/src/engine/render/shader_system/schemas/ShaderTypes.d.ts +54 -0
- package/dist/src/engine/render/shader_system/schemas/UniformSchema.d.ts +36 -0
- package/dist/src/engine/render/shader_system/schemas/VaryingSchema.d.ts +15 -0
- package/dist/src/engine/render/shader_system/schemas/VertexSchema.d.ts +9 -0
- package/dist/src/engine/render/targets/ComputeStorageTexture.d.ts +22 -0
- package/dist/src/engine/render/targets/GBufferRenderTarget.d.ts +33 -0
- package/dist/src/engine/render/targets/PingPongRenderTarget.d.ts +34 -0
- package/dist/src/engine/style/excalidraw/Excalidraw.d.ts +117 -0
- package/dist/src/engine/style/excalidraw/ExcalidrawAnimation.d.ts +27 -0
- package/dist/src/engine/style/excalidraw/ExcalidrawTypes.d.ts +102 -0
- package/dist/src/engine/style/excalidraw/HachureGenerator.d.ts +85 -0
- package/dist/src/engine/style/excalidraw/index.d.ts +4 -0
- package/dist/src/engine/utils/Builder.d.ts +74 -0
- package/dist/src/engine/utils/Builder3D.d.ts +50 -0
- package/dist/src/engine/utils/CurveSampleUtils.d.ts +61 -0
- package/dist/src/engine/utils/CurveUtil.d.ts +39 -0
- package/dist/src/engine/utils/GeometrySnapshot.d.ts +17 -0
- package/dist/src/engine/utils/MarchingSquares.d.ts +10 -0
- package/dist/src/engine/utils/OBJLoader.d.ts +15 -0
- package/dist/src/engine/utils/PathEqualizer.d.ts +37 -0
- package/dist/src/engine/utils/PathGeometryUtils.d.ts +61 -0
- package/dist/src/engine/utils/PathTriangulator.d.ts +128 -0
- package/dist/src/engine/utils/Raycaster.d.ts +48 -0
- package/dist/src/engine/utils/RealTime.d.ts +16 -0
- package/dist/src/engine/utils/ShapeMatcher.d.ts +21 -0
- package/dist/src/engine/utils/SubdivisionEngine.d.ts +63 -0
- package/dist/src/engine/utils/Utility.d.ts +51 -0
- package/dist/src/engine/utils/gpu_utils.d.ts +80 -0
- package/dist/src/index.d.ts +438 -0
- package/dist/src/main.d.ts +5 -0
- package/dist/src/plugins/OutlinePlugin.d.ts +36 -0
- package/package.json +117 -6
- package/readme.md +145 -0
- package/README.md +0 -3
package/bin/init.js
ADDED
|
@@ -0,0 +1,425 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
// =========================================================================
|
|
4
|
+
// File: bin/init.js - Retiam Project Starter & Skeleton Generator
|
|
5
|
+
// =========================================================================
|
|
6
|
+
|
|
7
|
+
import fs from 'fs';
|
|
8
|
+
import path from 'path';
|
|
9
|
+
import readline from 'readline/promises';
|
|
10
|
+
import { spawnSync } from 'child_process';
|
|
11
|
+
|
|
12
|
+
const args = process.argv.slice(2);
|
|
13
|
+
|
|
14
|
+
// Check for --help
|
|
15
|
+
const isHelp = args.includes('--help') || args.includes('-h') || args.includes('help');
|
|
16
|
+
if (isHelp) {
|
|
17
|
+
console.log(`
|
|
18
|
+
š Retiam WebGPU Engine - Project Initializer
|
|
19
|
+
|
|
20
|
+
Usage:
|
|
21
|
+
npx retiam init [directory] [options]
|
|
22
|
+
npx retiam create [directory] [options]
|
|
23
|
+
|
|
24
|
+
Arguments:
|
|
25
|
+
[directory] Destination directory (default: ./retiam-animation)
|
|
26
|
+
|
|
27
|
+
Options:
|
|
28
|
+
-n, --name <name> Project name for package.json (default: directory name)
|
|
29
|
+
--title <text> Hero text to display in Hello World scene (default: Hello World)
|
|
30
|
+
--pm <manager> Package manager: npm, pnpm, yarn, bun (default: auto-detected or npm)
|
|
31
|
+
-f, --force Overwrite destination directory if files already exist
|
|
32
|
+
-y, --yes Skip interactive prompts and use defaults
|
|
33
|
+
--install Automatically install dependencies after generation
|
|
34
|
+
--git Initialize a Git repository (git init)
|
|
35
|
+
--json Output structured machine-readable JSON for agents and CI
|
|
36
|
+
--help, -h Show this help message and exit
|
|
37
|
+
|
|
38
|
+
Examples:
|
|
39
|
+
npx retiam init
|
|
40
|
+
npx retiam init my-animation
|
|
41
|
+
npx retiam create intro-scene --title "Quantum Mechanics" --pm pnpm
|
|
42
|
+
npx retiam init my-project -y --install
|
|
43
|
+
npx retiam init agent-project --json --yes
|
|
44
|
+
`);
|
|
45
|
+
process.exit(0);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
// Auto-detect package manager from npm_config_user_agent
|
|
49
|
+
function detectPackageManager() {
|
|
50
|
+
const userAgent = process.env.npm_config_user_agent || '';
|
|
51
|
+
if (userAgent.startsWith('pnpm')) return 'pnpm';
|
|
52
|
+
if (userAgent.startsWith('yarn')) return 'yarn';
|
|
53
|
+
if (userAgent.startsWith('bun')) return 'bun';
|
|
54
|
+
return 'npm';
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
// Parse CLI flags
|
|
58
|
+
let targetDir = null;
|
|
59
|
+
let projectName = null;
|
|
60
|
+
let heroTitle = 'Hello World';
|
|
61
|
+
let packageManager = detectPackageManager();
|
|
62
|
+
let force = false;
|
|
63
|
+
let nonInteractive = false;
|
|
64
|
+
let runInstall = false;
|
|
65
|
+
let initGit = false;
|
|
66
|
+
let jsonOutput = false;
|
|
67
|
+
|
|
68
|
+
for (let i = 0; i < args.length; i++) {
|
|
69
|
+
const arg = args[i];
|
|
70
|
+
if (arg === '--json') {
|
|
71
|
+
jsonOutput = true;
|
|
72
|
+
nonInteractive = true;
|
|
73
|
+
} else if (arg === '-y' || arg === '--yes') {
|
|
74
|
+
nonInteractive = true;
|
|
75
|
+
} else if (arg === '-f' || arg === '--force') {
|
|
76
|
+
force = true;
|
|
77
|
+
} else if (arg === '--install') {
|
|
78
|
+
runInstall = true;
|
|
79
|
+
} else if (arg === '--git') {
|
|
80
|
+
initGit = true;
|
|
81
|
+
} else if (arg === '-n' || arg === '--name') {
|
|
82
|
+
projectName = args[++i];
|
|
83
|
+
} else if (arg === '--title') {
|
|
84
|
+
heroTitle = args[++i] || 'Hello World';
|
|
85
|
+
} else if (arg === '--pm') {
|
|
86
|
+
packageManager = args[++i] || packageManager;
|
|
87
|
+
} else if (!arg.startsWith('-') && !targetDir) {
|
|
88
|
+
targetDir = arg;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
async function main() {
|
|
93
|
+
// Interactive setup if TTY and not in --yes / --json mode
|
|
94
|
+
const isTTY = process.stdin.isTTY && !nonInteractive;
|
|
95
|
+
|
|
96
|
+
if (isTTY) {
|
|
97
|
+
const rl = readline.createInterface({
|
|
98
|
+
input: process.stdin,
|
|
99
|
+
output: process.stdout
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
try {
|
|
103
|
+
console.log(`\n⨠Welcome to Retiam - WebGPU Animation Project Generator\n`);
|
|
104
|
+
|
|
105
|
+
if (!targetDir) {
|
|
106
|
+
const inputDir = await rl.question(`š Destination directory (./retiam-animation): `);
|
|
107
|
+
targetDir = inputDir.trim() || 'retiam-animation';
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
const defaultName = path.basename(path.resolve(process.cwd(), targetDir))
|
|
111
|
+
.toLowerCase()
|
|
112
|
+
.replace(/[^a-z0-9_-]/g, '-');
|
|
113
|
+
|
|
114
|
+
if (!projectName) {
|
|
115
|
+
const inputName = await rl.question(`š¦ Project name (${defaultName}): `);
|
|
116
|
+
projectName = inputName.trim() || defaultName;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
const inputTitle = await rl.question(`šØ Starter animation text (${heroTitle}): `);
|
|
120
|
+
if (inputTitle.trim()) {
|
|
121
|
+
heroTitle = inputTitle.trim();
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
const inputPm = await rl.question(`ā” Package manager [npm/pnpm/yarn/bun] (${packageManager}): `);
|
|
125
|
+
if (inputPm.trim()) {
|
|
126
|
+
packageManager = inputPm.trim().toLowerCase();
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
const inputInstall = await rl.question(`š„ Run '${packageManager} install' now? [y/N]: `);
|
|
130
|
+
if (inputInstall.trim().toLowerCase().startsWith('y')) {
|
|
131
|
+
runInstall = true;
|
|
132
|
+
}
|
|
133
|
+
} finally {
|
|
134
|
+
rl.close();
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
if (!targetDir) {
|
|
139
|
+
targetDir = 'retiam-animation';
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
const resolvedDir = path.resolve(process.cwd(), targetDir);
|
|
143
|
+
const resolvedName = projectName || path.basename(resolvedDir)
|
|
144
|
+
.toLowerCase()
|
|
145
|
+
.replace(/[^a-z0-9_-]/g, '-') || 'retiam-animation';
|
|
146
|
+
|
|
147
|
+
// Conflict check
|
|
148
|
+
if (fs.existsSync(resolvedDir)) {
|
|
149
|
+
const existingFiles = fs.readdirSync(resolvedDir).filter(f => !f.startsWith('.'));
|
|
150
|
+
if (existingFiles.length > 0 && !force) {
|
|
151
|
+
if (jsonOutput) {
|
|
152
|
+
console.log(JSON.stringify({
|
|
153
|
+
status: 'error',
|
|
154
|
+
message: `Target directory '${targetDir}' already exists and is not empty. Use -f or --force to overwrite.`
|
|
155
|
+
}));
|
|
156
|
+
} else {
|
|
157
|
+
console.error(`\nā Error: Directory '${targetDir}' is not empty (${existingFiles.length} files found).`);
|
|
158
|
+
console.error(` Use -f or --force to proceed anyway.\n`);
|
|
159
|
+
}
|
|
160
|
+
process.exit(1);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
// Ensure directory structure
|
|
165
|
+
const srcDir = path.join(resolvedDir, 'src');
|
|
166
|
+
const scenesDir = path.join(srcDir, 'scenes');
|
|
167
|
+
fs.mkdirSync(scenesDir, { recursive: true });
|
|
168
|
+
|
|
169
|
+
// 1. package.json
|
|
170
|
+
const packageJson = {
|
|
171
|
+
name: resolvedName,
|
|
172
|
+
version: '0.1.0',
|
|
173
|
+
private: true,
|
|
174
|
+
type: 'module',
|
|
175
|
+
scripts: {
|
|
176
|
+
dev: 'vite',
|
|
177
|
+
build: 'tsc && vite build',
|
|
178
|
+
preview: 'vite preview',
|
|
179
|
+
render: 'retiam render src/scenes/HelloWorld.ts'
|
|
180
|
+
},
|
|
181
|
+
dependencies: {
|
|
182
|
+
retiam: '^1.0.0'
|
|
183
|
+
},
|
|
184
|
+
devDependencies: {
|
|
185
|
+
'@webgpu/types': '^0.1.31',
|
|
186
|
+
typescript: '^5.5.0',
|
|
187
|
+
vite: '^5.4.0'
|
|
188
|
+
}
|
|
189
|
+
};
|
|
190
|
+
|
|
191
|
+
// 2. tsconfig.json
|
|
192
|
+
const tsconfigJson = {
|
|
193
|
+
compilerOptions: {
|
|
194
|
+
target: 'ES2022',
|
|
195
|
+
module: 'ESNext',
|
|
196
|
+
moduleResolution: 'bundler',
|
|
197
|
+
lib: ['ES2022', 'DOM', 'DOM.Iterable'],
|
|
198
|
+
types: ['@webgpu/types', 'vite/client'],
|
|
199
|
+
strict: true,
|
|
200
|
+
esModuleInterop: true,
|
|
201
|
+
skipLibCheck: true,
|
|
202
|
+
isolatedModules: true
|
|
203
|
+
},
|
|
204
|
+
include: ['src']
|
|
205
|
+
};
|
|
206
|
+
|
|
207
|
+
// 3. vite.config.ts
|
|
208
|
+
const viteConfig = `import { defineConfig } from 'vite';
|
|
209
|
+
|
|
210
|
+
export default defineConfig({
|
|
211
|
+
optimizeDeps: {
|
|
212
|
+
esbuildOptions: {
|
|
213
|
+
target: 'es2022',
|
|
214
|
+
supported: {
|
|
215
|
+
'top-level-await': true
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
},
|
|
219
|
+
esbuild: {
|
|
220
|
+
target: 'es2022'
|
|
221
|
+
},
|
|
222
|
+
server: {
|
|
223
|
+
port: 3000,
|
|
224
|
+
open: true
|
|
225
|
+
}
|
|
226
|
+
});
|
|
227
|
+
`;
|
|
228
|
+
|
|
229
|
+
// 4. index.html
|
|
230
|
+
const indexHtml = `<!DOCTYPE html>
|
|
231
|
+
<html lang="en">
|
|
232
|
+
<head>
|
|
233
|
+
<meta charset="UTF-8" />
|
|
234
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
235
|
+
<title>${resolvedName} - Retiam WebGPU Animation</title>
|
|
236
|
+
<style>
|
|
237
|
+
* {
|
|
238
|
+
box-sizing: border-box;
|
|
239
|
+
}
|
|
240
|
+
body {
|
|
241
|
+
margin: 0;
|
|
242
|
+
overflow: hidden;
|
|
243
|
+
background-color: #080C14;
|
|
244
|
+
width: 100vw;
|
|
245
|
+
height: 100vh;
|
|
246
|
+
}
|
|
247
|
+
canvas {
|
|
248
|
+
display: block;
|
|
249
|
+
width: 100vw;
|
|
250
|
+
height: 100vh;
|
|
251
|
+
}
|
|
252
|
+
</style>
|
|
253
|
+
</head>
|
|
254
|
+
<body>
|
|
255
|
+
<canvas id="canvas"></canvas>
|
|
256
|
+
<script type="module" src="/src/main.ts"></script>
|
|
257
|
+
</body>
|
|
258
|
+
</html>
|
|
259
|
+
`;
|
|
260
|
+
|
|
261
|
+
// 5. src/main.ts
|
|
262
|
+
const mainTs = `import HelloWorldScene from './scenes/HelloWorld';
|
|
263
|
+
|
|
264
|
+
async function bootstrap() {
|
|
265
|
+
const canvas = document.getElementById('canvas') as HTMLCanvasElement;
|
|
266
|
+
if (!canvas) {
|
|
267
|
+
console.error('Canvas element not found');
|
|
268
|
+
return;
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
canvas.width = window.innerWidth;
|
|
272
|
+
canvas.height = window.innerHeight;
|
|
273
|
+
|
|
274
|
+
window.addEventListener('resize', () => {
|
|
275
|
+
canvas.width = window.innerWidth;
|
|
276
|
+
canvas.height = window.innerHeight;
|
|
277
|
+
});
|
|
278
|
+
|
|
279
|
+
const scene = new HelloWorldScene();
|
|
280
|
+
await scene.start(canvas);
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
bootstrap().catch((err) => {
|
|
284
|
+
console.error('Failed to initialize Retiam animation:', err);
|
|
285
|
+
});
|
|
286
|
+
`;
|
|
287
|
+
|
|
288
|
+
// 6. src/scenes/HelloWorld.ts
|
|
289
|
+
const helloWorldTs = `import { Scene, hex, SDFText, Write } from "retiam";
|
|
290
|
+
|
|
291
|
+
/**
|
|
292
|
+
* Starter Retiam Scene: Hello World
|
|
293
|
+
* Features a cinematic Write animation over an obsidian dark substrate.
|
|
294
|
+
*/
|
|
295
|
+
export default class HelloWorldScene extends Scene {
|
|
296
|
+
public async run(): Promise<void> {
|
|
297
|
+
// 1. Setup camera and obsidian canvas
|
|
298
|
+
this.camera.position.set([0, 0, 14]);
|
|
299
|
+
this.clearColor(hex("#080C14"));
|
|
300
|
+
|
|
301
|
+
// 2. Create the hero typography
|
|
302
|
+
const text = new SDFText("${heroTitle.replace(/"/g, '\\"')}", { fontSize: 1.1 });
|
|
303
|
+
text.paint.fill = hex("#38BDF8");
|
|
304
|
+
text.center();
|
|
305
|
+
|
|
306
|
+
// 3. Register entity and frame camera with balanced padding
|
|
307
|
+
this.add(text);
|
|
308
|
+
this.camera.frame(text, { padding: 0.3 });
|
|
309
|
+
|
|
310
|
+
// 4. Choreographed motion: Write animation
|
|
311
|
+
await this.play(new Write(text, { duration: 1500 }));
|
|
312
|
+
await this.wait(2000);
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
`;
|
|
316
|
+
|
|
317
|
+
// 7. .gitignore
|
|
318
|
+
const gitignore = `node_modules
|
|
319
|
+
dist
|
|
320
|
+
outputs
|
|
321
|
+
.DS_Store
|
|
322
|
+
*.local
|
|
323
|
+
`;
|
|
324
|
+
|
|
325
|
+
// 8. README.md
|
|
326
|
+
const readme = `# ${resolvedName}
|
|
327
|
+
|
|
328
|
+
A cinematic WebGPU mathematical animation built with [Retiam](https://github.com/abhilasbiswas/Retiam).
|
|
329
|
+
|
|
330
|
+
## š Quick Start
|
|
331
|
+
|
|
332
|
+
1. **Install dependencies**:
|
|
333
|
+
\`\`\`bash
|
|
334
|
+
${packageManager} install
|
|
335
|
+
\`\`\`
|
|
336
|
+
|
|
337
|
+
2. **Start real-time development server (60-144 FPS)**:
|
|
338
|
+
\`\`\`bash
|
|
339
|
+
${packageManager} run dev
|
|
340
|
+
\`\`\`
|
|
341
|
+
|
|
342
|
+
3. **Render broadcast video (MP4/WebM)**:
|
|
343
|
+
\`\`\`bash
|
|
344
|
+
${packageManager} run render
|
|
345
|
+
\`\`\`
|
|
346
|
+
|
|
347
|
+
## š Project Structure
|
|
348
|
+
|
|
349
|
+
- \`src/main.ts\`: Entrypoint mounting the WebGPU canvas.
|
|
350
|
+
- \`src/scenes/HelloWorld.ts\`: Starter scene with hero typography and \`Write\` animation.
|
|
351
|
+
- \`vite.config.ts\`: Real-time WebGPU bundler configuration with hot module reload.
|
|
352
|
+
`;
|
|
353
|
+
|
|
354
|
+
// Write all template files
|
|
355
|
+
fs.writeFileSync(path.join(resolvedDir, 'package.json'), JSON.stringify(packageJson, null, 2) + '\n', 'utf8');
|
|
356
|
+
fs.writeFileSync(path.join(resolvedDir, 'tsconfig.json'), JSON.stringify(tsconfigJson, null, 2) + '\n', 'utf8');
|
|
357
|
+
fs.writeFileSync(path.join(resolvedDir, 'vite.config.ts'), viteConfig, 'utf8');
|
|
358
|
+
fs.writeFileSync(path.join(resolvedDir, 'index.html'), indexHtml, 'utf8');
|
|
359
|
+
fs.writeFileSync(path.join(resolvedDir, '.gitignore'), gitignore, 'utf8');
|
|
360
|
+
fs.writeFileSync(path.join(resolvedDir, 'README.md'), readme, 'utf8');
|
|
361
|
+
fs.writeFileSync(path.join(srcDir, 'main.ts'), mainTs, 'utf8');
|
|
362
|
+
fs.writeFileSync(path.join(scenesDir, 'HelloWorld.ts'), helloWorldTs, 'utf8');
|
|
363
|
+
|
|
364
|
+
const createdFiles = [
|
|
365
|
+
'package.json',
|
|
366
|
+
'tsconfig.json',
|
|
367
|
+
'vite.config.ts',
|
|
368
|
+
'index.html',
|
|
369
|
+
'.gitignore',
|
|
370
|
+
'README.md',
|
|
371
|
+
'src/main.ts',
|
|
372
|
+
'src/scenes/HelloWorld.ts'
|
|
373
|
+
];
|
|
374
|
+
|
|
375
|
+
// Optional git init
|
|
376
|
+
if (initGit) {
|
|
377
|
+
try {
|
|
378
|
+
spawnSync('git', ['init'], { cwd: resolvedDir, stdio: 'ignore' });
|
|
379
|
+
} catch (_) {}
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
// Optional install
|
|
383
|
+
if (runInstall) {
|
|
384
|
+
if (!jsonOutput) {
|
|
385
|
+
console.log(`\nš¦ Installing dependencies with ${packageManager}...`);
|
|
386
|
+
}
|
|
387
|
+
try {
|
|
388
|
+
spawnSync(packageManager, ['install'], { cwd: resolvedDir, stdio: jsonOutput ? 'ignore' : 'inherit' });
|
|
389
|
+
} catch (err) {
|
|
390
|
+
if (!jsonOutput) {
|
|
391
|
+
console.warn(`ā ļø Failed to run '${packageManager} install'. Please run it manually.`);
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
|
|
396
|
+
if (jsonOutput) {
|
|
397
|
+
console.log(JSON.stringify({
|
|
398
|
+
status: 'success',
|
|
399
|
+
directory: targetDir,
|
|
400
|
+
absolutePath: resolvedDir,
|
|
401
|
+
projectName: resolvedName,
|
|
402
|
+
packageManager,
|
|
403
|
+
files: createdFiles
|
|
404
|
+
}, null, 2));
|
|
405
|
+
} else {
|
|
406
|
+
console.log(`\n⨠Successfully created Retiam project in '${targetDir}'!\n`);
|
|
407
|
+
console.log(`Next steps:`);
|
|
408
|
+
if (path.resolve(process.cwd()) !== resolvedDir) {
|
|
409
|
+
console.log(` 1. cd ${targetDir}`);
|
|
410
|
+
}
|
|
411
|
+
if (!runInstall) {
|
|
412
|
+
console.log(` 2. ${packageManager} install`);
|
|
413
|
+
console.log(` 3. ${packageManager} run dev # Real-time WebGPU preview`);
|
|
414
|
+
console.log(` 4. ${packageManager} run render # Export MP4 broadcast video\n`);
|
|
415
|
+
} else {
|
|
416
|
+
console.log(` 2. ${packageManager} run dev # Real-time WebGPU preview`);
|
|
417
|
+
console.log(` 3. ${packageManager} run render # Export MP4 broadcast video\n`);
|
|
418
|
+
}
|
|
419
|
+
}
|
|
420
|
+
}
|
|
421
|
+
|
|
422
|
+
main().catch((err) => {
|
|
423
|
+
console.error('Initialization failed:', err);
|
|
424
|
+
process.exit(1);
|
|
425
|
+
});
|