@docyrus/animaguru 0.23.0 → 0.25.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/NOTICE.md +24 -0
- package/README.md +6 -2
- package/dist/animaguru.js +274 -3
- package/package.json +1 -1
- package/skills/animaguru-aurora-glass/SKILL.md +33 -0
- package/skills/animaguru-aurora-glass/references/recipe.md +27 -0
- package/skills/animaguru-bauhaus-geometry/SKILL.md +35 -0
- package/skills/animaguru-bauhaus-geometry/references/recipe.md +30 -0
- package/skills/animaguru-caption-news/SKILL.md +34 -0
- package/skills/animaguru-caption-news/references/recipe.md +26 -0
- package/skills/animaguru-city-symphony/SKILL.md +34 -0
- package/skills/animaguru-city-symphony/references/recipe.md +26 -0
- package/skills/animaguru-countdown/SKILL.md +34 -0
- package/skills/animaguru-countdown/references/recipe.md +26 -0
- package/skills/animaguru-kino-montage/SKILL.md +34 -0
- package/skills/animaguru-kino-montage/references/recipe.md +26 -0
- package/skills/animaguru-liquid-motion/SKILL.md +35 -0
- package/skills/animaguru-liquid-motion/references/recipe.md +24 -0
- package/skills/animaguru-news-package/SKILL.md +34 -0
- package/skills/animaguru-news-package/references/recipe.md +26 -0
- package/skills/animaguru-newsreel/SKILL.md +34 -0
- package/skills/animaguru-newsreel/references/recipe.md +26 -0
- package/skills/animaguru-one-line-art/SKILL.md +34 -0
- package/skills/animaguru-one-line-art/references/recipe.md +28 -0
- package/skills/animaguru-sticker-explainer/SKILL.md +37 -0
- package/skills/animaguru-sticker-explainer/references/recipe.md +27 -0
- package/skills/animaguru-synthwave-y2k/SKILL.md +35 -0
- package/skills/animaguru-synthwave-y2k/references/recipe.md +29 -0
- package/skills/animaguru-telestrator/SKILL.md +34 -0
- package/skills/animaguru-telestrator/references/recipe.md +26 -0
- package/skills/animaguru-variety-captions/SKILL.md +36 -0
- package/skills/animaguru-variety-captions/references/recipe.md +27 -0
- package/skills/animaguru-visual-investigation/SKILL.md +34 -0
- package/skills/animaguru-visual-investigation/references/recipe.md +26 -0
- package/templates/video/README.md +1 -1
- package/templates/video/VIDEO-STYLE-NOTICES.txt +24 -0
- package/templates/video/shared/locales/en/style-studies.json +120 -0
- package/templates/video/src/studies/scenes.ts +599 -0
- package/templates/video/style-source-provenance.json +7 -2
package/NOTICE.md
CHANGED
|
@@ -1551,6 +1551,30 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
|
1551
1551
|
SOFTWARE.
|
|
1552
1552
|
|
|
1553
1553
|
|
|
1554
|
+
mg-styles-15
|
|
1555
|
+
MIT License
|
|
1556
|
+
|
|
1557
|
+
Copyright (c) 2026 Vincentwei1021
|
|
1558
|
+
|
|
1559
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
1560
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
1561
|
+
in the Software without restriction, including without limitation the rights
|
|
1562
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
1563
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
1564
|
+
furnished to do so, subject to the following conditions:
|
|
1565
|
+
|
|
1566
|
+
The above copyright notice and this permission notice shall be included in all
|
|
1567
|
+
copies or substantial portions of the Software.
|
|
1568
|
+
|
|
1569
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
1570
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
1571
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
1572
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
1573
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
1574
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
1575
|
+
SOFTWARE.
|
|
1576
|
+
|
|
1577
|
+
|
|
1554
1578
|
## Art Motion references
|
|
1555
1579
|
|
|
1556
1580
|
English adaptations of Huashu Art Motion (https://github.com/alchaincyf/huashu-art-motion). Source revision and coverage are in skills/animaguru-art-motion/references/coverage.json.
|
package/README.md
CHANGED
|
@@ -43,9 +43,13 @@ CLI versions before 0.16.2 need one manual update to gain enforcement. Publish t
|
|
|
43
43
|
|
|
44
44
|
CLI 0.23.0 adds eight evidence styles, in which real data, imagery or scans carry the film: Satellite Briefing, Engineering Briefing Board, LiDAR Survey, White Model Projection, Data Physicalization, Exploded Teardown, Microscope Story and Archive Light Table. Their skills ask for the user's own data first, list licence-clean sources, keep `production/FACTS.md` and `production/CREDITS.md`, and never let a generated image stand in for evidence. Each has a runnable study (`npm run example -- satellite-briefing`).
|
|
45
45
|
|
|
46
|
+
CLI 0.24.0 adds eight documentary & broadcast styles, cut from real archive footage, documents and data: Caption News, 1920s Newsreel, Live Countdown Split-screen, Time-lapse Symphony, Visual Investigation, Constructivist Montage, Sports Telestrator and Broadcast News Package. Their skills carry the same real-evidence and sourcing discipline as the evidence styles, with licence-clean archive and footage sources per style. Each has a runnable study (`npm run example -- caption-news`).
|
|
47
|
+
|
|
48
|
+
CLI 0.25.0 adds seven contemporary motion-design styles: Aurora & Glass, Liquid Motion, Bauhaus Geometry, Synthwave & Y2K, Sticker Explainer, Variety Captions and One-Line Art. Their signature techniques follow the MIT-licensed [mg-styles-15](https://github.com/Vincentwei1021/mg-styles-15) collection; the skills, studies and preview art are original. Each has a runnable study (`npm run example -- aurora-glass`).
|
|
49
|
+
|
|
46
50
|
CLI 0.16.2 also installs `animaguru-art-motion` for Codex and Claude Code: one skill with 36 English art-treatment references and nine explainer motion grammars, plus AnimaGuru generation, timing, camera and review guidance. Request it explicitly for a custom film treatment; its references are separate from the gallery presets. Source coverage and the upstream MIT notice are included in the skill.
|
|
47
51
|
|
|
48
|
-
CLI 0.5.2 includes a complete local PixiJS video workspace, now with
|
|
52
|
+
CLI 0.5.2 includes a complete local PixiJS video workspace, now with 55 visual styles:
|
|
49
53
|
|
|
50
54
|
```sh
|
|
51
55
|
animaguru templates
|
|
@@ -61,7 +65,7 @@ Open the generated folder in **Codex or Claude Code**, then describe the video y
|
|
|
61
65
|
- Agent instructions that first ask **Explainer, Advertisement or General Video**, then offer the available visual styles and [the preview gallery](https://animaguru.com/animation-styles), then gather a short creative brief. Each choice is saved before continuing.
|
|
62
66
|
- `film.config.json`, editable TypeScript scenes, localized copy, local asset/production folders, portable HTML5 ZIP export for iframe embedding, and `npm run export:mp4` with exact frame capture and output verification.
|
|
63
67
|
|
|
64
|
-
New projects leave category and template unset in `animaguru.project.json`. `animaguru.templates.json` lists categories, styles and their installed skills. The
|
|
68
|
+
New projects leave category and template unset in `animaguru.project.json`. `animaguru.templates.json` lists categories, styles and their installed skills. The 55 visual styles cover cutout, type, vector, technical, evidence, documentary, character, print, paper, material and cinematic treatments. Every style skill ships with the project, including its relevant visual interview and review criteria. Categories describe purpose and templates describe appearance and motion. The brief establishes audience, tone, message, story, duration and any CTA.
|
|
65
69
|
|
|
66
70
|
CLI 0.23.0 also adds **Machine Anatomy** (`machine-anatomy`): an idea explained as a working isometric machine of many small shaded parts in a framed figure card with a live readout. Adapted from the MIT-licensed [Anatomy](https://github.com/wheresryan22/anatomy) skill, it bundles that skill's geometry kit in `src/kit/anatomy/` with a PixiJS adapter, and `npm run example -- machine-anatomy` installs its original study.
|
|
67
71
|
|
package/dist/animaguru.js
CHANGED
|
@@ -19761,7 +19761,7 @@ var require_ignore2 = __commonJS({
|
|
|
19761
19761
|
// cli/package.json
|
|
19762
19762
|
var package_default = {
|
|
19763
19763
|
name: "@docyrus/animaguru",
|
|
19764
|
-
version: "0.
|
|
19764
|
+
version: "0.25.0",
|
|
19765
19765
|
description: "Agent-friendly AnimaGuru CLI built with CrustJS",
|
|
19766
19766
|
type: "module",
|
|
19767
19767
|
bin: {
|
|
@@ -46017,6 +46017,261 @@ var animation_styles_default = {
|
|
|
46017
46017
|
previewCaption: "Three NASA Ames photographs of one airfield on a light table; under the loupe a 1933 negative turns positive and opens into the picture. Public-domain NASA scans; the negatives are simulated.",
|
|
46018
46018
|
family: "evidence",
|
|
46019
46019
|
example: true
|
|
46020
|
+
},
|
|
46021
|
+
"caption-news": {
|
|
46022
|
+
name: "Caption News",
|
|
46023
|
+
description: "Huge chunk-slammed captions carry a story that reads with the sound off, while footage, documents and data each arrive with the source tag that proves them.",
|
|
46024
|
+
materials: [
|
|
46025
|
+
"Chunk-slammed captions",
|
|
46026
|
+
"Source-tagged footage",
|
|
46027
|
+
"Document highlighter sweeps"
|
|
46028
|
+
],
|
|
46029
|
+
motion: [
|
|
46030
|
+
"Frame-4 rolling number hook",
|
|
46031
|
+
"Keyword wipes in yellow",
|
|
46032
|
+
"Highlighter sweep on the page"
|
|
46033
|
+
],
|
|
46034
|
+
previewCaption: "A hook number rolls in the opening frames, a chunk-slammed caption lands its yellow keyword, and a report page is highlighted before its figure is trusted. Procedural stand-ins for the footage and document, not real sources.",
|
|
46035
|
+
family: "documentary",
|
|
46036
|
+
example: true
|
|
46037
|
+
},
|
|
46038
|
+
newsreel: {
|
|
46039
|
+
name: "1920s Newsreel",
|
|
46040
|
+
description: "A searchlight-and-globe ident, a newspaper spinning into the lens, and a fast announcer carried by a hot band, all inside one silver-graded projector gate.",
|
|
46041
|
+
materials: [
|
|
46042
|
+
"Projected film gate",
|
|
46043
|
+
"Art Deco ident lettering",
|
|
46044
|
+
"Grease-pencil marks"
|
|
46045
|
+
],
|
|
46046
|
+
motion: [
|
|
46047
|
+
"Globe-and-searchlight ident",
|
|
46048
|
+
"Spinning newspaper slam",
|
|
46049
|
+
"Iris wipe to the next story"
|
|
46050
|
+
],
|
|
46051
|
+
previewCaption: "The ident's searchlights snap on, a globe turns under the title, and a headline spins into the lens before the iris closes on a place card. Code-drawn packaging only; no archive footage is shown.",
|
|
46052
|
+
family: "documentary",
|
|
46053
|
+
example: true
|
|
46054
|
+
},
|
|
46055
|
+
countdown: {
|
|
46056
|
+
name: "Live Countdown Split-screen",
|
|
46057
|
+
description: "Real-time footage of one event with a known zero, the screen splitting into more cells as the moment nears and merging into a single picture when the clock hits it.",
|
|
46058
|
+
materials: [
|
|
46059
|
+
"Synced camera cells",
|
|
46060
|
+
"Fixed-slot digit clock",
|
|
46061
|
+
"Sync badges"
|
|
46062
|
+
],
|
|
46063
|
+
motion: [
|
|
46064
|
+
"Cells multiplying toward zero",
|
|
46065
|
+
"Many-into-one merge at zero",
|
|
46066
|
+
"Clock inversion at T plus"
|
|
46067
|
+
],
|
|
46068
|
+
previewCaption: "Cells multiply as the clock counts down, merge into one frame at zero, and the clock flips from counting down to counting up. Illustrative camera feeds, not a real launch.",
|
|
46069
|
+
family: "documentary",
|
|
46070
|
+
example: true
|
|
46071
|
+
},
|
|
46072
|
+
"city-symphony": {
|
|
46073
|
+
name: "Time-lapse Symphony",
|
|
46074
|
+
description: "Time-lapse turns traffic and crowds into rivers of light, cut like a minimalist score that accelerates to a climax and stops dead on a downbeat.",
|
|
46075
|
+
materials: [
|
|
46076
|
+
"Frame-blended light trails",
|
|
46077
|
+
"35mm release-print grade",
|
|
46078
|
+
"Day-ring clock graphic"
|
|
46079
|
+
],
|
|
46080
|
+
motion: [
|
|
46081
|
+
"Traffic sped into light rivers",
|
|
46082
|
+
"Grid of streets multiplying",
|
|
46083
|
+
"Hard cut to black on the beat"
|
|
46084
|
+
],
|
|
46085
|
+
previewCaption: "Traffic blurs into rivers of light as a grid of streets multiplies on the beat, then the score stops dead and the film cuts to black. Procedural city, not a real skyline.",
|
|
46086
|
+
family: "documentary",
|
|
46087
|
+
example: true
|
|
46088
|
+
},
|
|
46089
|
+
"visual-investigation": {
|
|
46090
|
+
name: "Visual Investigation",
|
|
46091
|
+
description: "Footage, documents and sound from one real event laid out on a shared clock, so independent sources check each other and converge on the same second.",
|
|
46092
|
+
materials: [
|
|
46093
|
+
"Synced evidence panels",
|
|
46094
|
+
"Grey ground, one red accent",
|
|
46095
|
+
"Freeze-circle-magnify marks"
|
|
46096
|
+
],
|
|
46097
|
+
motion: [
|
|
46098
|
+
"Panels syncing to one stopwatch",
|
|
46099
|
+
"Freeze, circle and loupe",
|
|
46100
|
+
"Converging red links to a map"
|
|
46101
|
+
],
|
|
46102
|
+
previewCaption: "Three sources light up against one stopwatch, a frozen frame is circled and magnified, and every red link converges on the same point of a map. Illustrative evidence panels, not a real case.",
|
|
46103
|
+
family: "documentary",
|
|
46104
|
+
example: true
|
|
46105
|
+
},
|
|
46106
|
+
"kino-montage": {
|
|
46107
|
+
name: "Constructivist Montage",
|
|
46108
|
+
description: "Real footage and photographs printed as one red-and-ink poster and cut on a machine beat, with scissored figures stacked into the structure they built.",
|
|
46109
|
+
materials: [
|
|
46110
|
+
"Red, ink and paper print",
|
|
46111
|
+
"Diagonal type bands",
|
|
46112
|
+
"Photomontage cut-outs"
|
|
46113
|
+
],
|
|
46114
|
+
motion: [
|
|
46115
|
+
"Grid lighting cell by cell",
|
|
46116
|
+
"Figures stacking into a tower",
|
|
46117
|
+
"Red wipe on the downbeat"
|
|
46118
|
+
],
|
|
46119
|
+
previewCaption: "A grid lights cell by cell, cut-out figures climb and stack into a tower, and a red band wipes to the count on the downbeat. Illustrative silhouettes, not real archive photographs.",
|
|
46120
|
+
family: "documentary",
|
|
46121
|
+
example: true
|
|
46122
|
+
},
|
|
46123
|
+
telestrator: {
|
|
46124
|
+
name: "Sports Telestrator",
|
|
46125
|
+
description: "Play it, rewind it, freeze it: rings under the feet, a marker arrow on the ball, and the picture flattened into a top-down board, drawn over real match footage.",
|
|
46126
|
+
materials: [
|
|
46127
|
+
"Marker rings and arrows",
|
|
46128
|
+
"Frame-counting stopwatch",
|
|
46129
|
+
"Perspective-flattened pitch board"
|
|
46130
|
+
],
|
|
46131
|
+
motion: [
|
|
46132
|
+
"Rewind into a freeze",
|
|
46133
|
+
"Ring and arrow drawn on the play",
|
|
46134
|
+
"Perspective flatten to the board"
|
|
46135
|
+
],
|
|
46136
|
+
previewCaption: "A play rewinds into a freeze, a ring and an arrow mark the move, and the picture flattens into a top-down board with the shot plotted on it. Illustrative match, not a real game.",
|
|
46137
|
+
family: "documentary",
|
|
46138
|
+
example: true
|
|
46139
|
+
},
|
|
46140
|
+
"news-package": {
|
|
46141
|
+
name: "Broadcast News Package",
|
|
46142
|
+
description: "A newsroom bulletin built entirely in code: a sting that becomes the channel bug, a rundown ticked off story by story, and a strap that never leaves the frame.",
|
|
46143
|
+
materials: [
|
|
46144
|
+
"Brand plate sting and bug",
|
|
46145
|
+
"Split-flap price board",
|
|
46146
|
+
"Lower-third strap"
|
|
46147
|
+
],
|
|
46148
|
+
motion: [
|
|
46149
|
+
"Sting flying into the corner bug",
|
|
46150
|
+
"Rundown rows flipping and ticking",
|
|
46151
|
+
"Split-flap board changing value"
|
|
46152
|
+
],
|
|
46153
|
+
previewCaption: "The sting slams in and flies to the corner bug, a rundown's rows flip and tick off one by one, and a split-flap board turns an old value into the new. Illustrative bulletin, procedural graphics throughout.",
|
|
46154
|
+
family: "documentary",
|
|
46155
|
+
example: true
|
|
46156
|
+
},
|
|
46157
|
+
"aurora-glass": {
|
|
46158
|
+
name: "Aurora & Glass",
|
|
46159
|
+
description: "Slow drifting fields of blurred colour under frosted glass cards with hairline highlights, where everything breathes and nothing hurries.",
|
|
46160
|
+
materials: [
|
|
46161
|
+
"Blurred aurora colour fields",
|
|
46162
|
+
"Frosted glass cards",
|
|
46163
|
+
"Hairline light edges"
|
|
46164
|
+
],
|
|
46165
|
+
motion: [
|
|
46166
|
+
"Slow colour-field drift",
|
|
46167
|
+
"Cards surfacing through blur",
|
|
46168
|
+
"Light sliding along glass edges"
|
|
46169
|
+
],
|
|
46170
|
+
previewCaption: "Frosted cards surface over drifting aurora light, a clear glass lens glides across the question and magnifies it, then settles into the title capsule as the cards fall back out of focus. An invented product, rendered entirely in code.",
|
|
46171
|
+
family: "graphic",
|
|
46172
|
+
example: true
|
|
46173
|
+
},
|
|
46174
|
+
"liquid-motion": {
|
|
46175
|
+
name: "Liquid Motion",
|
|
46176
|
+
description: "Glossy liquid that pours, stretches into thin necks, snaps and fuses, with wave-front wipes and droplets that land a beat behind.",
|
|
46177
|
+
materials: [
|
|
46178
|
+
"Glossy candy liquid",
|
|
46179
|
+
"Metaball merges",
|
|
46180
|
+
"Droplets and splashes"
|
|
46181
|
+
],
|
|
46182
|
+
motion: [
|
|
46183
|
+
"Wave-front liquid wipes",
|
|
46184
|
+
"Neck stretch, snap and rebound",
|
|
46185
|
+
"One drop pouring into a mark"
|
|
46186
|
+
],
|
|
46187
|
+
previewCaption: "Drops splash into a tangerine pool, blobs tear free on thinning necks and fuse into one swirling drop, two paint waves flood across behind it, and the drop pours into a glossy wordmark before a drip snaps off its p.",
|
|
46188
|
+
family: "material",
|
|
46189
|
+
example: true
|
|
46190
|
+
},
|
|
46191
|
+
"bauhaus-geometry": {
|
|
46192
|
+
name: "Bauhaus Geometry",
|
|
46193
|
+
description: "Circles, triangles and bars in primary colours move only along a strict grid, one exact action per beat, like a poster that keeps rebuilding itself.",
|
|
46194
|
+
materials: [
|
|
46195
|
+
"Primary-colour geometry",
|
|
46196
|
+
"Strict modular grid",
|
|
46197
|
+
"Printed poster type"
|
|
46198
|
+
],
|
|
46199
|
+
motion: [
|
|
46200
|
+
"Grid-locked moves on the beat",
|
|
46201
|
+
"Pivots on centres, corners and the frame",
|
|
46202
|
+
"Mechanical, overshoot-free easing"
|
|
46203
|
+
],
|
|
46204
|
+
previewCaption: "A grid draws itself and shapes land on its lines one beat at a time, the whole poster turns about its centre, quarter turns ripple through a row of tiles, and the type locks in before the camera pulls back to the printed sheet. Drawn entirely in code.",
|
|
46205
|
+
family: "graphic",
|
|
46206
|
+
example: true
|
|
46207
|
+
},
|
|
46208
|
+
"synthwave-y2k": {
|
|
46209
|
+
name: "Synthwave & Y2K",
|
|
46210
|
+
description: "A neon perspective grid under a slatted sunset, chrome lettering with a lens flare and pop-up desktop windows, all played back through a flickering VHS deck.",
|
|
46211
|
+
materials: [
|
|
46212
|
+
"Neon grid and slatted sun",
|
|
46213
|
+
"Bevelled chrome lettering",
|
|
46214
|
+
"VHS scanlines and colour bleed"
|
|
46215
|
+
],
|
|
46216
|
+
motion: [
|
|
46217
|
+
"Endless grid run to the horizon",
|
|
46218
|
+
"Chrome title slam with flare and glint",
|
|
46219
|
+
"Pop-ups, cursor drags and tape glitches"
|
|
46220
|
+
],
|
|
46221
|
+
previewCaption: "The VCR's blue screen rolls into a neon grid racing at a slatted sun, a chrome title slams in with a flare and a tape stutter, a neon script strikes on, and a pop-up is dragged aside and clicked before the windows switch off like a tube. Drawn entirely in code.",
|
|
46222
|
+
family: "cinematic",
|
|
46223
|
+
example: true
|
|
46224
|
+
},
|
|
46225
|
+
"sticker-explainer": {
|
|
46226
|
+
name: "Sticker Explainer",
|
|
46227
|
+
description: "Cut-out photos with thick white borders, flat icons and exact charts laid across one huge board, linked by long camera moves while every line of narration adds a new piece.",
|
|
46228
|
+
materials: [
|
|
46229
|
+
"White-bordered photo stickers",
|
|
46230
|
+
"Flat icons and exact charts",
|
|
46231
|
+
"Calm blue-grey board"
|
|
46232
|
+
],
|
|
46233
|
+
motion: [
|
|
46234
|
+
"Long eased pans and zooms",
|
|
46235
|
+
"Stickers slapped onto the board",
|
|
46236
|
+
"Counters and bars on every line"
|
|
46237
|
+
],
|
|
46238
|
+
previewCaption: "Coffee stickers slap onto one blue-grey board as the camera travels from fact to fact, counters roll and bars grow with each narration line, and the board pulls back to the sum in the middle. Procedural stickers and rounded figures, not real photographs.",
|
|
46239
|
+
family: "technical",
|
|
46240
|
+
example: true
|
|
46241
|
+
},
|
|
46242
|
+
"variety-captions": {
|
|
46243
|
+
name: "Variety Captions",
|
|
46244
|
+
description: "TV variety-show captions: chunky rounded type in layered outlines pops onto the footage a beat after every gag, and every feeling gets its own reaction mark.",
|
|
46245
|
+
materials: [
|
|
46246
|
+
"Layered-outline rounded type",
|
|
46247
|
+
"Burst frames, sweat drops and sparkles",
|
|
46248
|
+
"Bright, clashing colour"
|
|
46249
|
+
],
|
|
46250
|
+
motion: [
|
|
46251
|
+
"Overshoot pops on the gag",
|
|
46252
|
+
"Letter-by-letter bounces",
|
|
46253
|
+
"Freeze-frame shock bursts"
|
|
46254
|
+
],
|
|
46255
|
+
previewCaption: "A cat bats a mug to the edge as question marks bounce in, the freeze frame gets a NOT THE MUG!! burst, a sweat drop slides past a deadpan stare, and a stamp lands on zero regrets. Procedurally rendered stand-in footage, not a real clip.",
|
|
46256
|
+
family: "graphic",
|
|
46257
|
+
example: true
|
|
46258
|
+
},
|
|
46259
|
+
"one-line-art": {
|
|
46260
|
+
name: "One-Line Art",
|
|
46261
|
+
description: "A single thin line draws one figure, keeps going and becomes the next, carrying the whole film in one unbroken stroke across open space.",
|
|
46262
|
+
materials: [
|
|
46263
|
+
"One constant-width line",
|
|
46264
|
+
"One or two colours",
|
|
46265
|
+
"Generous negative space"
|
|
46266
|
+
],
|
|
46267
|
+
motion: [
|
|
46268
|
+
"Self-drawing stroke",
|
|
46269
|
+
"Figures flowing into each other",
|
|
46270
|
+
"Line turning into a filled mark"
|
|
46271
|
+
],
|
|
46272
|
+
previewCaption: "One champagne line draws a sun on the horizon, three arches and a woman's profile without lifting, closes a ring that fills with gold from the point where it met, then pulls back to the wordmark. Invented brand, drawn entirely in code.",
|
|
46273
|
+
family: "graphic",
|
|
46274
|
+
example: true
|
|
46020
46275
|
}
|
|
46021
46276
|
},
|
|
46022
46277
|
browseStyles: "Browse animation styles",
|
|
@@ -46031,7 +46286,8 @@ var animation_styles_default = {
|
|
|
46031
46286
|
character: "Character & pixel",
|
|
46032
46287
|
material: "Materials & depth",
|
|
46033
46288
|
cinematic: "Cinema & media",
|
|
46034
|
-
evidence: "Evidence & data"
|
|
46289
|
+
evidence: "Evidence & data",
|
|
46290
|
+
documentary: "Documentary & broadcast"
|
|
46035
46291
|
},
|
|
46036
46292
|
searchLabel: "Search visual styles",
|
|
46037
46293
|
searchPlaceholder: "Try paper, product, typography\u2026",
|
|
@@ -46149,7 +46405,22 @@ var VIDEO_STYLE_IDS = [
|
|
|
46149
46405
|
"data-physicalization",
|
|
46150
46406
|
"exploded-teardown",
|
|
46151
46407
|
"microscope-story",
|
|
46152
|
-
"archive-light-table"
|
|
46408
|
+
"archive-light-table",
|
|
46409
|
+
"caption-news",
|
|
46410
|
+
"newsreel",
|
|
46411
|
+
"countdown",
|
|
46412
|
+
"city-symphony",
|
|
46413
|
+
"visual-investigation",
|
|
46414
|
+
"kino-montage",
|
|
46415
|
+
"telestrator",
|
|
46416
|
+
"news-package",
|
|
46417
|
+
"aurora-glass",
|
|
46418
|
+
"liquid-motion",
|
|
46419
|
+
"bauhaus-geometry",
|
|
46420
|
+
"synthwave-y2k",
|
|
46421
|
+
"sticker-explainer",
|
|
46422
|
+
"variety-captions",
|
|
46423
|
+
"one-line-art"
|
|
46153
46424
|
];
|
|
46154
46425
|
var VIDEO_WORKFLOW_IDS = [
|
|
46155
46426
|
"product-proof",
|
package/package.json
CHANGED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: animaguru-aurora-glass
|
|
3
|
+
description: Build Aurora & Glass visuals and motion in an AnimaGuru PixiJS video workspace. Use when this visual style is chosen for an explainer, advertisement or general video.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Aurora & Glass
|
|
8
|
+
|
|
9
|
+
Slow drifting fields of blurred colour under frosted glass cards with hairline highlights: the calm, translucent look of current product and AI launches, where everything breathes and nothing hurries. Subject, audience, emotional tone and story come from the user's brief. This style supports Explainer, Advertisement and General Video.
|
|
10
|
+
|
|
11
|
+
## Establish direction
|
|
12
|
+
|
|
13
|
+
Follow sibling `animaguru-video` for purpose → style → compact interview before new production. Reuse explicit choices and completed briefs; honor a requested interview skip. Share [the style gallery](https://animaguru.com/animation-styles#aurora-glass). Fold missing visual questions into the shared interview:
|
|
14
|
+
|
|
15
|
+
- Which neighbouring hues fit the brand (violet, blue and teal; or orange, pink and red), on a dark or a light ground?
|
|
16
|
+
- What do the cards hold (real product screens, a conversation, settings, a few numbers), and which single moment deserves the clear lens?
|
|
17
|
+
|
|
18
|
+
## Build the look and movement
|
|
19
|
+
|
|
20
|
+
Read `pixijs` and the relevant Graphics, Text, Container, Filters or Mesh skills. Read `animaguru` before generating assets; discover current models and estimates, respect the user's budget, and reuse completed media. Essential text, interface states and numbers belong in authored canvas content.
|
|
21
|
+
|
|
22
|
+
- Aurora ground: three to five large solid shapes blurred 80–150 px, each drifting on its own slow closed path (a 20–40 s loop) and breathing a few percent in size over a deep base. Keep to two or three neighbouring hues; complementary colours turn muddy where they blend. Add a few thin light threads or specks so the glass has detail to soften.
|
|
23
|
+
- Glass cards: the backdrop blurred 20–40 px inside a large-radius rounded shape, a 5–10 % white fill, a one-pixel inner edge at about 30 % white, a faint top sheen and a soft lifted shadow. Stack two or three cards at different depths: nearer cards drift further and blur whatever lies behind them, farther cards included.
|
|
24
|
+
- Light: one key light travels slowly; each glass edge brightens where its normal faces it, so light slides along the edges as cards and light move.
|
|
25
|
+
- Hero lens, at most one per film: a clear liquid-glass shape that magnifies its centre, bends hard at a bevelled rim with a slight colour split, and carries a specular edge toward the light. Let it glide over the content, then settle into a capsule or button that holds the title.
|
|
26
|
+
- Pace: sine or near-linear easing, no overshoot and no bounce. Text and interface content enter only with opacity and about 8 px of rise, staggered; state changes crossfade. Receding layers lose opacity and fall out of focus rather than flying away.
|
|
27
|
+
- Add 3–5 % noise or dither over the frame against gradient banding, and judge banding in the exported file at its delivery bitrate.
|
|
28
|
+
|
|
29
|
+
Use the [production recipe](references/recipe.md) for the bundled original study and port-specific decisions. It is a technique example, not a prescribed film. Keep motions a function of absolute seconds; separate drawing cadence from camera/light cadence when the material calls for it. Prepare assets locally, preserve async seeking and register actual resource/cue times. Keep essential type editable and localized.
|
|
30
|
+
|
|
31
|
+
## Review and delivery
|
|
32
|
+
|
|
33
|
+
Inspect banding in the colour fields, edge highlights that stay one pixel and follow the light, card text that stays legible over the brightest field, blur that visibly softens what sits behind each card, and that nothing moves fast. Check representative full-resolution frames, moving playback, desktop/mobile fit and cold seeks. Follow `animaguru-video` for production records, audio mixing and HTML5 delivery; export MP4 when requested. Describe the actual 2D/2.5D rendering method accurately. Physically rendered 3D remains deferred.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Aurora & Glass production recipe
|
|
2
|
+
|
|
3
|
+
The workspace includes an executable original study in `src/studies/scenes.ts`, selected with `aurora-glass`. Its drawing commands are consumed by `src/studies/pixi-renderer.ts`; geometry and time sampling are shared with the gallery renderer. All copy lives in `shared/locales/en/style-studies.json`.
|
|
4
|
+
|
|
5
|
+
In an untouched starter, run `npm run example -- aurora-glass`, then `npm run dev`. The command refuses to replace an authored film, retains starter backups in `production/example-backup/`, and writes an 8-second study with its own resource tracks. `npm run export:html` and `npm run export:mp4` use this installed film normally. To use the recipe inside an existing film, import `studyFrame()` and `StudyRenderer`, then compose the selected scene into the project's timeline instead of running the installer.
|
|
6
|
+
|
|
7
|
+
## Assets and licences
|
|
8
|
+
|
|
9
|
+
Draw the colour fields, glass and interface in code. When the cards should show real product screens, photographs or icons, use the user's own material or licence-clean sources (CC0, public domain, or a licence the user confirms), and record each in `production/CREDITS.md`. Use fonts the project may embed (OFL or licensed faces); a light, open sans suits the style. Never reproduce another company's interface or trademark unless the user owns it.
|
|
10
|
+
|
|
11
|
+
## Adaptation decisions
|
|
12
|
+
|
|
13
|
+
- Render the colour fields as large `Graphics` circles in one container behind a single `BlurFilter` (strength 80–150) at a reduced filter resolution, or as a small mesh-gradient fragment shader; the field holds no detail, so half resolution is invisible.
|
|
14
|
+
- For each card, render the layers behind it into a `RenderTexture`, show the card's region of that texture through a `BlurFilter` (strength 20–40) masked by a rounded-rectangle `Graphics`, then add the white fill, the one-pixel inner stroke and a sheen gradient. Drive edge brightness from the angle between each edge's normal and the moving light, with a gradient stroke or a small shader.
|
|
15
|
+
- Make the lens a small filter over the back texture: sample magnified toward its centre, displace along the rim normal with a slightly different offset per colour channel, and add the specular rim. Morph it into a capsule by animating its half sizes and corner radius together.
|
|
16
|
+
- Overlay a fixed noise sprite or a noise filter at 3–5 % and export at a bitrate that keeps it, or banding returns in the MP4.
|
|
17
|
+
|
|
18
|
+
The study is silent, original procedural art with an invented product; it demonstrates material, layout and motion rather than real product claims. Its stacked translucent ellipses and flat panes stand in for the blur and frosting described above. Configure an original subject, palette, scene sequence, duration and soundtrack from the brief.
|
|
19
|
+
|
|
20
|
+
Use `src/studies/timing.ts` for deterministic easing, seeded variation, measured stroke truncation and cue helpers. `window.animaguru.texts` exposes visible study text bounds for `npm run review`; text declarations alone do not count as visual proof. Inspect the actual frames as well.
|
|
21
|
+
|
|
22
|
+
## Sources and attribution
|
|
23
|
+
|
|
24
|
+
Inspired by the following pinned references; source-specific 3D/media dependencies are not bundled. New study art and scene geometry are original. The workspace's `VIDEO-STYLE-NOTICES.txt` preserves the repository notices and clarifies third-party asset scope.
|
|
25
|
+
|
|
26
|
+
- [prompts/12-aurora-glass.md](https://github.com/Vincentwei1021/mg-styles-15/blob/49052d80bfaf9fa8412cc9710530e5e95a3b8d8c/prompts/12-aurora-glass.md)
|
|
27
|
+
- [demos/12-aurora-glass/main.js](https://github.com/Vincentwei1021/mg-styles-15/blob/49052d80bfaf9fa8412cc9710530e5e95a3b8d8c/demos/12-aurora-glass/main.js)
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: animaguru-bauhaus-geometry
|
|
3
|
+
description: Build Bauhaus Geometry visuals and motion in an AnimaGuru PixiJS video workspace. Use when this visual style is chosen for an explainer, advertisement or general video.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Bauhaus Geometry
|
|
8
|
+
|
|
9
|
+
A kinetic poster in the Bauhaus and Swiss tradition: circles, triangles, quarter discs and bars in red, yellow, blue and black on cream paper move only along a strict modular grid, one exact action per beat, until the composition locks into a finished poster with its type. Order is the point: every move is a whole number of modules, every landing sits on a grid line, and nothing overshoots. Subject, audience, emotional tone and story come from the user's brief. This style supports Explainer, Advertisement and General Video.
|
|
10
|
+
|
|
11
|
+
## Establish direction
|
|
12
|
+
|
|
13
|
+
Follow sibling `animaguru-video` for purpose → style → compact interview before new production. Reuse explicit choices and completed briefs; honor a requested interview skip. Share [the style gallery](https://animaguru.com/animation-styles#bauhaus-geometry). Fold missing visual questions into the shared interview:
|
|
14
|
+
|
|
15
|
+
- What sets the beat (a music track's tempo, or a reading pace), and which moment should land on the downbeat?
|
|
16
|
+
- Which words carry the poster (a title, a three-word line, a date or place), and do brand colours replace the primaries or join them?
|
|
17
|
+
- Should the finish read as flat screen graphics or as a printed sheet (paper, ink, registration marks)?
|
|
18
|
+
|
|
19
|
+
## Build the look and movement
|
|
20
|
+
|
|
21
|
+
Read `pixijs` and the relevant Graphics, Text, Container or Filters skills. Read `animaguru` before generating assets: generation can supply music or narration; the geometry and type are authored code, never a generated image. Discover current models and estimates, respect the user's budget, and reuse completed media.
|
|
22
|
+
|
|
23
|
+
- The grid is the score. Pick one module and derive every position, size and distance from it (for example 80 px at 1280 × 720: a 14 × 8 field inside an 80/40 px margin, so the frame centre is a grid crossing). Moves are whole modules; sizes are whole or half modules; edges land on lines. Show the construction grid as a pale line, at least while the composition assembles.
|
|
24
|
+
- Palette: red `#E03C31`, yellow `#F2B705`, blue `#1E4FA3`, ink black and cream paper `#F1E9DA`, or the brand's own limited set used the same way. Flat fills, no gradients on the shapes. One geometric sans for display (Futura-like), one condensed grotesque for small caps; set type horizontally or vertically on the grid.
|
|
25
|
+
- One action per beat (0.5 s at 120 bpm): a slide, a swing, a sweep, a cut-in, a split. Ease with easeInOutQuad or linear over a fraction of the beat (about 0.3 s); never a spring, bounce or overshoot. Bars and rules may grow at constant speed. Cut-ins land exactly on the beat.
|
|
26
|
+
- Alternate pivots and make each rotation a quarter or half turn so the shape lands on the grid: a shape's own centre, one of its vertices or corners (a triangle swinging about its right angle, a quarter disc sweeping about its corner like a clock hand), and the frame centre (a whole composition turning 180° maps the grid onto itself).
|
|
27
|
+
- Drive arrays with phase offsets, like p5.js kinetic posters: a wave of quarter turns crosses a row of tiles column by column, each tile a fixed fraction of a beat after its neighbour, and the whole wave finishes inside its beat.
|
|
28
|
+
- Build to a held poster: the composition assembles, has one big hero move (a turn or a cascade) at 60–75 % of the runtime, then the type cuts in and the frame holds with the grid stepping back. End on a cut or a mechanical camera pull-back, never a dissolve.
|
|
29
|
+
- For a printed finish, lay the colours as separate ink layers on a paper texture: slightly ragged edges, a little density variation, a pixel of misregistration between layers, and registration marks in every layer so the offset shows. Keep small type crisp enough to read.
|
|
30
|
+
|
|
31
|
+
Use the [production recipe](references/recipe.md) for the bundled original study and port-specific decisions. It is a technique example, not a prescribed film. Keep motions a function of absolute seconds so any frame can be sought cold. Prepare assets locally, preserve async seeking and register actual resource/cue times. Keep essential type editable and localized.
|
|
32
|
+
|
|
33
|
+
## Review and delivery
|
|
34
|
+
|
|
35
|
+
At full resolution, check every landing against the grid (positions and edges on module lines), every action against the cue sheet (one per beat, cut-ins on the beat), easing curves free of overshoot, the colour count, and type legibility and margins at the intended size. Step through the fastest moves frame by frame and seek into the middle of them cold. Follow `animaguru-video` for production records, audio mixing and HTML5 delivery; export MP4 when requested. Describe the actual 2D rendering method accurately. Physically rendered 3D remains deferred.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Bauhaus Geometry production recipe
|
|
2
|
+
|
|
3
|
+
The workspace includes an executable original study in `src/studies/scenes.ts`, selected with `bauhaus-geometry`. Its drawing commands are consumed by `src/studies/pixi-renderer.ts`; geometry and time sampling are shared with the gallery renderer. All copy lives in `shared/locales/en/style-studies.json`.
|
|
4
|
+
|
|
5
|
+
In an untouched starter, run `npm run example -- bauhaus-geometry`, then `npm run dev`. The command refuses to replace an authored film, retains starter backups in `production/example-backup/`, and writes an 8-second study with its own resource tracks. `npm run export:html` and `npm run export:mp4` use this installed film normally. To use the recipe inside an existing film, import `studyFrame()` and `StudyRenderer`, then compose the selected scene into the project's timeline instead of running the installer.
|
|
6
|
+
|
|
7
|
+
## Assets
|
|
8
|
+
|
|
9
|
+
The style needs no footage or generated imagery: shapes, grid and type are drawn in code. Use fonts licensed for commercial use and bundle them with the film (for example Jost or League Spartan for a Futura-like display face, Barlow Condensed or Oswald for small caps, all under the SIL Open Font License). A paper texture, if used, is procedural or CC0. Record each font and texture in `production/CREDITS.md`. Invent names and copy; do not imitate a real school's, museum's or brand's identity.
|
|
10
|
+
|
|
11
|
+
## Adaptation decisions
|
|
12
|
+
|
|
13
|
+
- Keep the grid as data: one module `M`, origin `(X0, Y0)` and `gx(c) = X0 + c * M`, `gy(r) = Y0 + r * M`. Store every element's resting position and size in modules and derive pixels from them, so a layout change never breaks alignment.
|
|
14
|
+
- Draw each shape once as `Graphics` (circle, polygon, an `arc` for a quarter disc) inside a `Container` whose `pivot` is the action's pivot: the shape's centre, the vertex it swings about, or the frame centre for a whole-composition turn. Animate only `position` and `rotation` from absolute time; growing bars and rules are a width or a mask derived from time.
|
|
15
|
+
- Schedule actions from a cue table in beats (`seconds = beat * 60 / bpm`) and ease with easeInOutQuad (`k < .5 ? 2k² : 1 - (2 - 2k)² / 2`) or linear. Avoid `spring()` from `timing.ts` here: its exponential settle reads organic rather than mechanical, and any initial velocity makes it overshoot.
|
|
16
|
+
- For an array wave, start each tile at `beat + column * step + row * step / 2` and keep `step × columns + turn length` inside the beat, so the next cut-in lands on a still frame.
|
|
17
|
+
- Printed finish: a paper `Sprite` from a procedural canvas texture under the shapes, each ink colour on its own `Container` offset by a pixel for misregistration, and a light grain overlay. A multiply-style blend keeps overprints honest where colours cross. Registration marks go in every ink layer so the offset is visible.
|
|
18
|
+
- Vertical type is a `Text` rotated −90° about its baseline corner; set it to the grid like any shape. Load the fonts before the first frame so seeks never show fallback faces.
|
|
19
|
+
- Reserve motion blur for genuinely fast moves (a 180° turn in one beat), using a few sub-steps or a directional blur filter; keep held frames sharp.
|
|
20
|
+
|
|
21
|
+
The study is silent, original procedural art. It demonstrates the grid, the beat-locked actions, the pivot alternation and the phase-offset array, not a prescribed film. The gallery preview renders the same choreography as a printed poster: separate ink layers on a paper stock, off register by a pixel, finishing on a pull-back to the sheet on a wall. Configure the subject, palette, scene sequence, duration and soundtrack from the brief.
|
|
22
|
+
|
|
23
|
+
Use `src/studies/timing.ts` for deterministic easing, seeded variation, measured stroke truncation and cue helpers. `window.animaguru.texts` exposes visible study text bounds for `npm run review`; text declarations alone do not count as visual proof. Inspect the actual frames as well.
|
|
24
|
+
|
|
25
|
+
## Sources and attribution
|
|
26
|
+
|
|
27
|
+
Inspired by the following pinned references; no source code, assets or audio are bundled. New study art and scene geometry are original. The workspace's `VIDEO-STYLE-NOTICES.txt` preserves the repository notices and clarifies third-party asset scope.
|
|
28
|
+
|
|
29
|
+
- [prompts/09-bauhaus.md](https://github.com/Vincentwei1021/mg-styles-15/blob/49052d80bfaf9fa8412cc9710530e5e95a3b8d8c/prompts/09-bauhaus.md)
|
|
30
|
+
- [demos/09-bauhaus/film.js](https://github.com/Vincentwei1021/mg-styles-15/blob/49052d80bfaf9fa8412cc9710530e5e95a3b8d8c/demos/09-bauhaus/film.js)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: animaguru-caption-news
|
|
3
|
+
description: Build Caption News visuals and motion in an AnimaGuru PixiJS video workspace. Use when this visual style is chosen for an explainer, advertisement or general video.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Caption News
|
|
8
|
+
|
|
9
|
+
Social-video news that reads with the sound off: huge chunk-slammed captions are the lead actor over real footage, photos and documents, and every number arrives with the source tag that proves it. It is a documentary & broadcast style: real footage, photos, documents or data carry the film. Subject, audience, emotional tone and story come from the user's brief. This style supports Explainer, Advertisement and General Video.
|
|
10
|
+
|
|
11
|
+
## Establish direction
|
|
12
|
+
|
|
13
|
+
Follow sibling `animaguru-video` for purpose → style → compact interview before new production. Reuse explicit choices and completed briefs; honor a requested interview skip. Share [the style gallery](https://animaguru.com/animation-styles#caption-news). Fold missing visual questions into the shared interview:
|
|
14
|
+
|
|
15
|
+
- Which footage, photos or documents do you have, and what is the one turn the hook sets up?
|
|
16
|
+
- Which keyword gets the yellow block, and what should the lower third carry (place, date or speaker)?
|
|
17
|
+
|
|
18
|
+
## Use real evidence
|
|
19
|
+
|
|
20
|
+
Ask the user for their own footage, photos, documents or data first; otherwise find licence-clean sources (see the [production recipe](references/recipe.md)). Never stand a generated image in for the evidence, and never show a number without its source tag in the same shot. Keep `production/FACTS.md` (each on-screen or spoken claim, its source URL and quoted wording, or the measurement method) and `production/CREDITS.md` (every asset's source, author and licence), and deliver both with the film. CC BY-SA, "no known restrictions" or unclear licences are not CC0: name them to the user and ask before using them.
|
|
21
|
+
|
|
22
|
+
## Build the look and movement
|
|
23
|
+
|
|
24
|
+
Read `pixijs` and the relevant Graphics, Text, Container, Assets or Filters skills. Read `animaguru` before generating assets: generation can supply music or narration, never the evidence itself. Discover current models and estimates, respect the user's budget, and reuse completed media. Essential captions, numbers and charts belong in authored canvas content, never baked into footage.
|
|
25
|
+
|
|
26
|
+
- The caption card is the shot: one Chinese line and one English line, chunk-slammed a piece at a time, one keyword per caption wiped into a honey-yellow block; never wrapped.
|
|
27
|
+
- Numbers roll in fixed-width digit cells with their source tag in the same shot; a document highlight sweeps the exact line before its figure is restated as a block.
|
|
28
|
+
- Cuts land on a half-beat grid; transitions are a small fixed set (hard cut, a short white flash, a card sliding in, a split, a lit grid, a mask growing out of a map shape) — never dissolves or page turns.
|
|
29
|
+
|
|
30
|
+
Use the [production recipe](references/recipe.md) for sources, the bundled original study and port-specific decisions. It is a technique example, not a prescribed film. Keep motions a function of absolute seconds; separate drawing cadence from camera/light cadence when the material calls for it. Prepare assets locally, preserve async seeking and register actual resource/cue times. Keep essential type editable and localized.
|
|
31
|
+
|
|
32
|
+
## Review and delivery
|
|
33
|
+
|
|
34
|
+
Inspect reading time on every caption and chart title, source-tag presence beside every number, footage credits in the corner, keyword-wipe timing, and every figure against `FACTS.md`. Check representative full-resolution frames, moving playback, desktop/mobile fit and cold seeks. Follow `animaguru-video` for production records, audio mixing and HTML5 delivery; export MP4 when requested. Describe the actual 2D/2.5D rendering method accurately. Physically rendered 3D remains deferred.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Caption News production recipe
|
|
2
|
+
|
|
3
|
+
The workspace includes an executable original study in `src/studies/scenes.ts`, selected with `caption-news`. Its drawing commands are consumed by `src/studies/pixi-renderer.ts`; geometry and time sampling are shared with the gallery renderer. All copy lives in `shared/locales/en/style-studies.json`.
|
|
4
|
+
|
|
5
|
+
In an untouched starter, run `npm run example -- caption-news`, then `npm run dev`. The command refuses to replace an authored film, retains starter backups in `production/example-backup/`, and writes an 8-second study with its own resource tracks. `npm run export:html` and `npm run export:mp4` use this installed film normally. To use the recipe inside an existing film, import `studyFrame()` and `StudyRenderer`, then compose the selected scene into the project's timeline instead of running the installer.
|
|
6
|
+
|
|
7
|
+
## Evidence and sources
|
|
8
|
+
|
|
9
|
+
Wikimedia Commons (read the licence on each file page: CC0, public domain or CC BY are fine; not CC BY-SA, "no known restrictions", unclear licences or YouTube re-uploads), U.S. federal agencies (USDA, USGS, NASA, NOAA, NARA — works of federal employees are public domain), Internet Archive (public domain or CC0/CC BY items only; U.S. works published before 1931 are public domain), Library of Congress (read each item's rights statement). Official documents and data (reports, statistics, filings) come from the agency's own site. Download into the film's `public/` or `production/` folders, log every request, and record each asset in `production/CREDITS.md` and each claim with its quoted wording in `production/FACTS.md`. Burn a readable footage credit into the frame where the medium calls for one.
|
|
10
|
+
|
|
11
|
+
## Adaptation decisions
|
|
12
|
+
|
|
13
|
+
- Build the caption card and the ledger (data-card) ground as `Text` and `Graphics` over a `Sprite` or video-texture footage layer; the keyword's yellow block is a masked rect wiped left to right behind the chunk.
|
|
14
|
+
- Roll numbers in fixed-width digit cells (a monospace `Text` or `BitmapText` per digit, updated on the ticker) so a counter never jitters; keep its source tag in the same shot.
|
|
15
|
+
- Sweep the document highlight as a `Graphics` rect in a multiply-like blend over the scanned page sprite, animated by an exact clip mask rather than opacity, so the sentence reads as marked, not merely tinted.
|
|
16
|
+
|
|
17
|
+
The study is silent, original procedural art with illustrative values, labelled as such; it demonstrates material, layout and motion, not evidence. Replace its stand-ins with the real footage, photos, documents or data described above, never with generated imagery. The gallery preview uses procedural placeholder footage and documents, labelled illustrative, to demonstrate the caption, keyword-wipe and highlight system without claiming any real source. Configure the subject, palette, scene sequence, duration and soundtrack from the brief.
|
|
18
|
+
|
|
19
|
+
Use `src/studies/timing.ts` for deterministic easing, seeded variation, measured stroke truncation and cue helpers. `window.animaguru.texts` exposes visible study text bounds for `npm run review`; text declarations alone do not count as visual proof. Inspect the actual frames as well.
|
|
20
|
+
|
|
21
|
+
## Sources and attribution
|
|
22
|
+
|
|
23
|
+
Inspired by the following pinned references; source-specific 3D/media dependencies are not bundled. New study art and scene geometry are original. The workspace's `VIDEO-STYLE-NOTICES.txt` preserves the repository notices and clarifies third-party asset scope.
|
|
24
|
+
|
|
25
|
+
- [styles/caption-news/STYLE.md](https://github.com/lemomo-ai/lemo-opuscar/blob/77ee8318df779b0736d7de0abe24387e51023735/styles/caption-news/STYLE.md)
|
|
26
|
+
- [styles/caption-news/demo/main.js](https://github.com/lemomo-ai/lemo-opuscar/blob/77ee8318df779b0736d7de0abe24387e51023735/styles/caption-news/demo/main.js)
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: animaguru-city-symphony
|
|
3
|
+
description: Build Time-lapse Symphony visuals and motion in an AnimaGuru PixiJS video workspace. Use when this visual style is chosen for an explainer, advertisement or general video.
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Time-lapse Symphony
|
|
8
|
+
|
|
9
|
+
A city film cut like a piece of minimalist music: time-lapse turns traffic, crowds and clouds into rivers of light, the cuts get denser with the score's subdivisions, one thing slows almost to a stop, and the film ends on a hard cut to black on a downbeat. It is a documentary & broadcast style: real time-lapse, aerial, archive or photographic footage carries the film. Subject, audience, emotional tone and story come from the user's brief. This style supports Explainer, Advertisement and General Video.
|
|
10
|
+
|
|
11
|
+
## Establish direction
|
|
12
|
+
|
|
13
|
+
Follow sibling `animaguru-video` for purpose → style → compact interview before new production. Reuse explicit choices and completed briefs; honor a requested interview skip. Share [the style gallery](https://animaguru.com/animation-styles#city-symphony). Fold missing visual questions into the shared interview:
|
|
14
|
+
|
|
15
|
+
- Which place, and which licence-clean time-lapse, aerial or archive footage should carry the film, and what is its one slowed, fragile moment?
|
|
16
|
+
- What is the score's tempo and arc (minimal repetition → acceleration → climax → hard stop → coda)?
|
|
17
|
+
|
|
18
|
+
## Use real evidence
|
|
19
|
+
|
|
20
|
+
Ask the user for their own time-lapses, photographs, documents or data of the place first; otherwise find licence-clean sources (see the [production recipe](references/recipe.md)). Footage only: never generate images, never use colourised or "restored" archive copies, never a YouTube mirror without a passed review. Keep `production/FACTS.md` (every number from an official source, with its URL and quoted wording) and `production/CREDITS.md` (every asset's source, author and licence), delivered with the film.
|
|
21
|
+
|
|
22
|
+
## Build the look and movement
|
|
23
|
+
|
|
24
|
+
Read `pixijs` and the relevant Filters, Container, Graphics or Text skills. Read `animaguru` before generating assets: generation can supply music or narration, never the city's own footage. Discover current models and estimates, respect the user's budget, and reuse completed media. Essential number cards and the closing quote belong in authored canvas content.
|
|
25
|
+
|
|
26
|
+
- Density follows the score: the cut grid (bars, beats, subdivisions) comes from one tempo function, never a hand-typed duration; the grid split (1×2 up to 4×4) is this style's split screen.
|
|
27
|
+
- Speed is the instrument: every sped-up shot reads as motion-blurred light, not stepped frames; one moment brakes into slow motion exactly where the music's arpeggios stop.
|
|
28
|
+
- One 35mm release-print grade and matte unify every source, archive included; number cards and the closing quote stay left-aligned, never centred or boxed.
|
|
29
|
+
|
|
30
|
+
Use the [production recipe](references/recipe.md) for sources, the bundled original study and port-specific decisions. It is a technique example, not a prescribed film. Keep motions a function of absolute seconds; separate drawing cadence from camera/light cadence when the material calls for it. Prepare assets locally, preserve async seeking and register actual resource/cue times. Keep essential type editable and localized.
|
|
31
|
+
|
|
32
|
+
## Review and delivery
|
|
33
|
+
|
|
34
|
+
Inspect cut-to-beat alignment, grade consistency across day and night shots, text reading time against `readcheck`-style limits, and every number against `FACTS.md`. Check representative full-resolution frames, moving playback, desktop/mobile fit and cold seeks. Follow `animaguru-video` for production records, audio mixing and HTML5 delivery; export MP4 when requested. Describe the actual 2D/2.5D rendering method accurately. Physically rendered 3D remains deferred.
|