@dnyantra/dtly 0.2.1 → 0.3.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.
Files changed (80) hide show
  1. package/README.md +21 -8
  2. package/dist/agents.d.ts +1 -0
  3. package/dist/agents.js +9 -4
  4. package/dist/agents.js.map +1 -1
  5. package/dist/cli.js +35 -5
  6. package/dist/cli.js.map +1 -1
  7. package/dist/core/anim.js +20 -0
  8. package/dist/core/anim.js.map +1 -1
  9. package/dist/core/captions.d.ts +13 -0
  10. package/dist/core/captions.js +57 -0
  11. package/dist/core/captions.js.map +1 -0
  12. package/dist/core/geo.d.ts +13 -0
  13. package/dist/core/geo.js +41 -0
  14. package/dist/core/geo.js.map +1 -0
  15. package/dist/core/model.d.ts +112 -9
  16. package/dist/core/model.js.map +1 -1
  17. package/dist/core/path.d.ts +35 -0
  18. package/dist/core/path.js +324 -0
  19. package/dist/core/path.js.map +1 -0
  20. package/dist/core/svg.d.ts +22 -0
  21. package/dist/core/svg.js +217 -0
  22. package/dist/core/svg.js.map +1 -0
  23. package/dist/core/text.d.ts +3 -1
  24. package/dist/core/text.js +49 -3
  25. package/dist/core/text.js.map +1 -1
  26. package/dist/mcp/server.js +28 -1
  27. package/dist/mcp/server.js.map +1 -1
  28. package/dist/ops/ops.d.ts +7 -0
  29. package/dist/ops/ops.js +11 -1
  30. package/dist/ops/ops.js.map +1 -1
  31. package/dist/presets/app.d.ts +2 -0
  32. package/dist/presets/app.js +82 -0
  33. package/dist/presets/app.js.map +1 -0
  34. package/dist/presets/captions.d.ts +2 -0
  35. package/dist/presets/captions.js +48 -0
  36. package/dist/presets/captions.js.map +1 -0
  37. package/dist/presets/charts.d.ts +2 -0
  38. package/dist/presets/charts.js +162 -0
  39. package/dist/presets/charts.js.map +1 -0
  40. package/dist/presets/index.d.ts +1 -1
  41. package/dist/presets/index.js +62 -1
  42. package/dist/presets/index.js.map +1 -1
  43. package/dist/presets/maps.d.ts +2 -0
  44. package/dist/presets/maps.js +79 -0
  45. package/dist/presets/maps.js.map +1 -0
  46. package/dist/render/fx.d.ts +11 -0
  47. package/dist/render/fx.js +87 -0
  48. package/dist/render/fx.js.map +1 -0
  49. package/dist/render/grade.d.ts +20 -0
  50. package/dist/render/grade.js +178 -0
  51. package/dist/render/grade.js.map +1 -0
  52. package/dist/render/lottie.d.ts +36 -0
  53. package/dist/render/lottie.js +523 -0
  54. package/dist/render/lottie.js.map +1 -0
  55. package/dist/render/node-host.d.ts +1 -0
  56. package/dist/render/node-host.js +15 -4
  57. package/dist/render/node-host.js.map +1 -1
  58. package/dist/render/perspective.d.ts +5 -0
  59. package/dist/render/perspective.js +71 -0
  60. package/dist/render/perspective.js.map +1 -0
  61. package/dist/render/renderer.d.ts +6 -0
  62. package/dist/render/renderer.js +156 -95
  63. package/dist/render/renderer.js.map +1 -1
  64. package/dist/render/shapes.d.ts +6 -0
  65. package/dist/render/shapes.js +129 -0
  66. package/dist/render/shapes.js.map +1 -0
  67. package/dist/render/tiles.d.ts +11 -0
  68. package/dist/render/tiles.js +42 -0
  69. package/dist/render/tiles.js.map +1 -0
  70. package/dist/render/transcribe.d.ts +14 -0
  71. package/dist/render/transcribe.js +55 -0
  72. package/dist/render/transcribe.js.map +1 -0
  73. package/dist/studio/server.js +14 -1
  74. package/dist/studio/server.js.map +1 -1
  75. package/dist/studio-app/app.js +5 -4
  76. package/dist/studio-app/app.js.map +4 -4
  77. package/dist/version.d.ts +1 -1
  78. package/dist/version.js +1 -1
  79. package/package.json +1 -1
  80. package/plugin/skills/{dtly → moti}/SKILL.md +26 -6
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.2.1";
1
+ export declare const VERSION = "0.3.0";
2
2
  export declare const BRAND = "DT.ly \u2014 from the creator of CustomerPro.in";
package/dist/version.js CHANGED
@@ -1,3 +1,3 @@
1
- export const VERSION = '0.2.1';
1
+ export const VERSION = '0.3.0';
2
2
  export const BRAND = 'DT.ly — from the creator of CustomerPro.in';
3
3
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dnyantra/dtly",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "description": "DT.ly — After Effects-style motion graphics as JSON, rendered to MP4, with an MCP server for AI agents. From the creator of CustomerPro.in.",
5
5
  "keywords": [
6
6
  "motion-graphics",
@@ -1,11 +1,11 @@
1
1
  ---
2
- name: dtly
2
+ name: moti
3
3
  description: Make motion graphics and short videos with DT.ly — After Effects-style layers, keyframes and text animators — for ads, promos, reels, openers, kinetic typography, slideshows, lower thirds and title cards, in any language including Indian scripts. Uses the dtly MCP tools (or the dtly CLI). Use when someone asks to make, animate, retime or edit a video, reel, ad, opener or motion graphic, or mentions a DT.ly project.
4
4
  ---
5
5
 
6
- # DT.ly
6
+ # moti
7
7
 
8
- You are the motion designer. You plan the piece, build it layer by layer, look at your own frames,
8
+ moti is DT.ly's motion designer, and so are you now. You plan the piece, build it layer by layer, look at your own frames,
9
9
  and hand over a video someone would actually post.
10
10
 
11
11
  The bar: it should feel made by a good studio for this exact brand — every move eased, every line
@@ -123,6 +123,22 @@ generate them per beat so each line fits its scene, and check the spoken words a
123
123
  or fix text themselves. Their edits save to the same file — `project_describe` again before your
124
124
  next change when they say they adjusted something.
125
125
 
126
+ ## What you can make (and with which tool)
127
+
128
+ | The brief asks for | Use |
129
+ |---|---|
130
+ | Logo or icon animation, explainer graphics | `svg_import` (every SVG part becomes an editable shape: recolour, draw-on with `trim`, morph by keyframing `path`), shapes `star`/`polygon`/`path`, `repeater`, gradients |
131
+ | A ready-made animated character or icon | a `lottie` layer (`src` = Lottie .json; `size`, `loop`, `speed`) |
132
+ | Numbers, stats, charts | `element.counter` (₹ and lakh/crore grouping with `locale: en-IN`), `chart.bar`, `chart.line`, `chart.donut`, `chart.progress`; any text can count with `value` + `{value}` |
133
+ | App or website promo | `element.phoneMockup` (screenshot or screen recording in a phone that tilts in 3D), `element.cursor` (pointer/finger with taps); `tilt` and `cornerPin` effects for any flat layer |
134
+ | Energetic cuts, sale / tech look | transitions `glitch`, `rgbWhip`, `warp`, `flash`; effects `glitch`, `rgbSplit`, `wave`; `overlay.lightLeak` |
135
+ | A film look / brand colour grade | an `adjustment` layer with `curves`, `colorBalance` (shadows/midtones/highlights), `exposure`, `temperature`, `vignette`, `lut` (.cube) |
136
+ | Captions for a voiceover or talking video | `captions_add` (SRT/VTT/JSON, or transcribe audio with Sarvam in any Indian language) — current word highlighted |
137
+ | Route, delivery area, "visit us" map | `map_tiles` (real map background from a provider the user chooses) + `map.route` (draw-on route, pins, labels, distance) |
138
+
139
+ Out of scope on purpose: motion tracking, green screen / VFX, 3D scenes and character rigging.
140
+ If a brief needs them, say so and suggest the closest thing DT.ly does well.
141
+
126
142
  ## 4. Look, then fix
127
143
 
128
144
  Before rendering, `render_sheet` across every beat **and** mid-transition, and `render_frame` at
@@ -158,12 +174,16 @@ A project is JSON: `comps[]`, each with `width`, `height`, `fps`, `duration`, `b
158
174
  | Track matte | `matte: {layer, mode: alpha\|alphaInverted}` |
159
175
  | Trim paths | shape `trim: {start, end}` in % — draw-on lines, rings, underlines |
160
176
  | Text animators | `animators: [{unit: grapheme\|word\|line, stagger, duration, delay, order, ease, from: {opacity, x, y, scale, rotation, blur, tracking, color}, clip, mode: "out"}]` |
161
- | Effects | `blur`, `dropShadow`, `glow`, `fill`, `brightness`, `saturate`, `contrast` |
177
+ | Effects | `blur`, `dropShadow`, `glow`, `fill`, `brightness`, `saturate`, `contrast`, `tilt`, `cornerPin`, `rgbSplit`, `glitch`, `wave`, `curves`, `colorBalance`, `exposure`, `temperature`, `vignette`, `lut` |
178
+ | Adjustment layer | `type: "adjustment"` — its effects grade everything below it |
179
+ | Shape paths & morphs | `shape: "path"`, `path: "M… C…"`; keyframe two different paths to morph; `repeater: {copies, position, rotation, scale}` |
180
+ | Counters | text `value` (animatable) + `format: {prefix, suffix, decimals, locale}`; `{value}` in `text` |
162
181
  | Motion blur | `motionBlur: {samples, shutter}` |
163
182
  | Blending | `blendMode: multiply\|screen\|overlay\|add\|…` |
164
183
 
165
- Layer types: `text`, `shape` (`rect`, `ellipse`, `polygon`, `path`, `line`), `solid`, `image`,
166
- `video` (`trimIn`, `speed`, `volume`), `audio` (`volume`, `fadeIn`, `fadeOut`), `precomp`, `null`.
184
+ Layer types: `text`, `shape` (`rect`, `ellipse`, `polygon`, `star`, `path`, `line`), `solid`, `image`,
185
+ `video` (`trimIn`, `speed`, `volume`), `audio` (`volume`, `fadeIn`, `fadeOut`), `lottie`, `adjustment`,
186
+ `precomp`, `null`.
167
187
  Solids, images, videos and precomps are anchored at their centre; shapes are centred on their
168
188
  origin; text is anchored at its alignment point, vertically centred. Position defaults to the
169
189
  comp centre.