@mevdragon/vidfarm-devcli 0.2.10 → 0.2.11
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/SKILL.developer.md +11 -2
- package/dist/src/cli.js +2 -1
- package/dist/src/lib/template-style-options.js +36 -0
- package/package.json +1 -1
package/SKILL.developer.md
CHANGED
|
@@ -919,6 +919,15 @@ npx @mevdragon/vidfarm-devcli session
|
|
|
919
919
|
|
|
920
920
|
The current standard version is `2026-05-30`. The CLI response includes `caption_standard_version`, `fonts`, `text_background_colors`, `presets`, `package_dependencies`, the source standard file, and the starter template style file.
|
|
921
921
|
|
|
922
|
+
Text background rendering rule:
|
|
923
|
+
|
|
924
|
+
- any selected text background color must render as an inline highlight chip that hugs the text only
|
|
925
|
+
- apply visible per-line padding around the glyph bounds; the background should feel intentional, not cramped
|
|
926
|
+
- use slightly curved corners like TikTok's native text highlight shape
|
|
927
|
+
- do not render full-width bars, paragraph washes, large caption panels, or loose boxes behind text
|
|
928
|
+
- for multi-line captions, each line should get its own tight chip or a chip shape that follows the actual text block closely
|
|
929
|
+
- support chip strength levels where practical: `subtle` for light editor-style chips, `standard` for normal TikTok color chips, and `strong` for high-contrast emphatic captions
|
|
930
|
+
|
|
922
931
|
Canonical font IDs:
|
|
923
932
|
|
|
924
933
|
- `tiktok_sans_semibold`: default native TikTok caption font, backed by `@fontsource/tiktok-sans` or the bundled `TikTokSans-SemiBold.ttf` starter asset
|
|
@@ -969,8 +978,8 @@ Canonical text background color IDs:
|
|
|
969
978
|
Canonical style presets:
|
|
970
979
|
|
|
971
980
|
- `tiktok_native_white`: TikTok Sans SemiBold, white fill, no color chip, native black shadow
|
|
972
|
-
- `tiktok_native_chip`: TikTok Sans SemiBold, white fill, red default
|
|
973
|
-
- `tiktok_editor_gray`: TikTok Sans SemiBold, dark fill, light gray default chip, no shadow
|
|
981
|
+
- `tiktok_native_chip`: TikTok Sans SemiBold, white fill, red default inline highlight chip, `standard` chip strength, native black shadow
|
|
982
|
+
- `tiktok_editor_gray`: TikTok Sans SemiBold, dark fill, light gray default inline highlight chip, `subtle` chip strength, no shadow
|
|
974
983
|
|
|
975
984
|
Templates that expose caption styling should use these IDs in `configSchema`, operation payloads, manifests, and docs instead of inventing local names or hardcoding unrelated font stacks. If a template intentionally uses a format-specific typography system, document the exception in the template-local `SKILL.md`.
|
|
976
985
|
|
package/dist/src/cli.js
CHANGED
|
@@ -7,7 +7,7 @@ import path from "node:path";
|
|
|
7
7
|
import { parseArgs } from "node:util";
|
|
8
8
|
import { promisify } from "node:util";
|
|
9
9
|
import dotenv from "dotenv";
|
|
10
|
-
import { CAPTION_STANDARD_VERSION, STARTER_TEMPLATE_FONT_OPTIONS, STARTER_TEMPLATE_TEXT_BACKGROUND_COLOR_OPTIONS, TIKTOK_CAPTION_STYLE_PRESETS } from "./lib/template-style-options.js";
|
|
10
|
+
import { CAPTION_STANDARD_VERSION, STARTER_TEMPLATE_FONT_OPTIONS, STARTER_TEMPLATE_TEXT_BACKGROUND_COLOR_OPTIONS, TIKTOK_CAPTION_STYLE_PRESETS, TIKTOK_TEXT_BACKGROUND_RENDERING } from "./lib/template-style-options.js";
|
|
11
11
|
import { analyzeTemplateDna, hasTemplatePreviewMedia, stageTemplateDnaInputs, syncTemplateDnaModule } from "./lib/template-dna.js";
|
|
12
12
|
import { assertTemplateFolderNameHasPrefix, defaultSkillPathForTemplateModule, deriveTemplateRootDirFromModulePath } from "./lib/template-paths.js";
|
|
13
13
|
const execFileAsync = promisify(execFile);
|
|
@@ -857,6 +857,7 @@ async function runSessionCommand(argv) {
|
|
|
857
857
|
caption_standard_version: CAPTION_STANDARD_VERSION,
|
|
858
858
|
fonts: STARTER_TEMPLATE_FONT_OPTIONS,
|
|
859
859
|
text_background_colors: STARTER_TEMPLATE_TEXT_BACKGROUND_COLOR_OPTIONS,
|
|
860
|
+
text_background_rendering: TIKTOK_TEXT_BACKGROUND_RENDERING,
|
|
860
861
|
presets: TIKTOK_CAPTION_STYLE_PRESETS,
|
|
861
862
|
package_dependencies: [
|
|
862
863
|
"@fontsource/tiktok-sans",
|
|
@@ -99,6 +99,38 @@ export const TIKTOK_TEXT_BACKGROUND_COLOR_OPTIONS = [
|
|
|
99
99
|
{ id: "dark_gray", label: "Dark Gray", hex: "#333333" }
|
|
100
100
|
];
|
|
101
101
|
export const STARTER_TEMPLATE_TEXT_BACKGROUND_COLOR_OPTIONS = TIKTOK_TEXT_BACKGROUND_COLOR_OPTIONS;
|
|
102
|
+
export const TIKTOK_TEXT_BACKGROUND_RENDERING = {
|
|
103
|
+
mode: "inline_highlight_chip",
|
|
104
|
+
rule: "Text background colors must render as inline highlight chips that hug the text only.",
|
|
105
|
+
padding: "Use visible per-line padding around glyph bounds; do not render full-width bars, paragraph washes, or loose caption boxes.",
|
|
106
|
+
shape: "Use slightly curved corners, similar to native TikTok text highlight chips.",
|
|
107
|
+
strengths: {
|
|
108
|
+
none: {
|
|
109
|
+
paddingX: 0,
|
|
110
|
+
paddingY: 0,
|
|
111
|
+
radius: 0,
|
|
112
|
+
opacity: 0
|
|
113
|
+
},
|
|
114
|
+
subtle: {
|
|
115
|
+
paddingX: 14,
|
|
116
|
+
paddingY: 8,
|
|
117
|
+
radius: 9,
|
|
118
|
+
opacity: 0.72
|
|
119
|
+
},
|
|
120
|
+
standard: {
|
|
121
|
+
paddingX: 20,
|
|
122
|
+
paddingY: 12,
|
|
123
|
+
radius: 12,
|
|
124
|
+
opacity: 0.86
|
|
125
|
+
},
|
|
126
|
+
strong: {
|
|
127
|
+
paddingX: 26,
|
|
128
|
+
paddingY: 14,
|
|
129
|
+
radius: 14,
|
|
130
|
+
opacity: 0.94
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
};
|
|
102
134
|
export const TIKTOK_CAPTION_STYLE_PRESETS = [
|
|
103
135
|
{
|
|
104
136
|
id: "tiktok_native_white",
|
|
@@ -114,6 +146,8 @@ export const TIKTOK_CAPTION_STYLE_PRESETS = [
|
|
|
114
146
|
fontId: "tiktok_sans_semibold",
|
|
115
147
|
fill: "#ffffff",
|
|
116
148
|
defaultBackgroundColorId: "red",
|
|
149
|
+
backgroundRendering: "inline_highlight_chip",
|
|
150
|
+
chipStrength: "standard",
|
|
117
151
|
shadow: "native_black_shadow"
|
|
118
152
|
},
|
|
119
153
|
{
|
|
@@ -122,6 +156,8 @@ export const TIKTOK_CAPTION_STYLE_PRESETS = [
|
|
|
122
156
|
fontId: "tiktok_sans_semibold",
|
|
123
157
|
fill: "#111111",
|
|
124
158
|
defaultBackgroundColorId: "light_gray",
|
|
159
|
+
backgroundRendering: "inline_highlight_chip",
|
|
160
|
+
chipStrength: "subtle",
|
|
125
161
|
shadow: "none"
|
|
126
162
|
}
|
|
127
163
|
];
|