无题

— then YAML frontmatter, then — then markdown content.

Let’s craft.

First, compute description length. We’ll write Persian description: “ابزار Tauri+Svelte+Rust را با مدل‌های محلی اجرا کنید، از طریق چت اسپرایت و انیمیشن ۲۴‑۴۸ فریم تولید کنید و بسته‌های استاندارد را در مارکت‌های بازی بفروشید.” Let’s count characters.

Count manually: We’ll count characters including spaces.

String: “ابزار Tauri+Svelte+Rust را با مدل‌های محلی اجرا کنید، از طریق چت اسپرایت و انیمیشن ۲۴‑۴۸ فریم تولید کنید و بسته‌های استاندارد را در مارکت‌های بازی بفروشید.”

Let’s count: I’ll copy and count.

I’ll write without Persian digits? Use regular numbers? We’ll use regular numbers maybe.

Better: “ابزار Tauri+Svelte+Rust را با مدل‌های محلی اجرا کنید، از طریق چت اسپرایت و انیمیشن ۲۴‑۴۸ فریم تولید کنید و بسته‌های استاندارد را در مارکت‌های بازی بفروشید.”

Now count characters (including spaces and punctuation). I’ll approximate.

I’ll count using segments.

“ابزار” 5
space 1 =>6
“Tauri+Svelte+Rust” length: Tauri(5)+ + (1) + Svelte(6)+ + (1)+ Rust(4) =5+1+6+1+4=17. So total now 6+17=23
space =>24
“را” 2 =>26
space =>27
“با” 2 =>29
space =>30
“مدل‌های” let’s count: م(1)د(2)ل(3)‌(zero width?) Actually hyphen? We’ll treat as “مدل‌های”: characters: م(1)د(2)ل(3)‌(4)ه(5)‌(6) maybe? Hard. Approx 6? Let’s approximate 6. =>36
space =>37
“محلی” 4 =>41
space =>42
“اجرا” 4 =>46
space =>47
“کنید،” maybe “کنید,” includes comma: “کنید” 4 + comma 1 =5 =>52
space =>53
“از” 2 =>55
space =>56
“طریق” 4 =>60
space =>61
“چت” 3 =>64
space =>65
“اسپرایت” 7 =>72
space =>73
“و” 1 =>74
space =>75
“انیمیشن” 7 =>82
space =>83
“۲۴‑۴۸” let’s count: “۲” (1) “۴” (2) “‑” (dash) (3) “۴” (4) “۸” (5) =>5 =>88
space =>89
“فریم” 4 =>93
space =>94
“تولید” 4 =>98
space =>99
“کنید،” 5 =>104
space =>105
“و” 1 =>106
space =>107
“بسته‌های” let’s approximate 8? “بسته‌های”: ب(1)س(2)ت(3)ه(4)‌(5)ه(6) maybe 6? Actually “بسته‌های”: ب(1)س(2)ت(3)ه(4)‌(5)ه(6) =>6. =>113
space =>114
“استاندارد” 9 =>123
space =>124
“را” 2 =>126
space =>127
“در” 2 =>129
space =>130
“مارکت‌های” approx 8? “مارکت‌های”: م(1)ا(2)ر(3)ک(4)ت(5)‌(6)ه(7) =>7? plus maybe? Let’s say 7 =>137
space =>138
“بازی” 4 =>142
space =>143
“بفروشید.” let’s count: ب(1)ف(2)ر(3)و(4)ش(5)ی(6)د(7) . (8) =>8 =>151

So length ~151 characters, too long. Need 100-125.

We need shorter description.

Let’s craft shorter: “ابزار Tauri+Svelte+Rust را با مدل محلی اجرا کنید؛ از چت اسپرایت و انیمیشن ۲۴‑۴۸ فریم بسازید و بسته‌های استاندارد را در مارکت‌های بازی بفروشید.”

Now count.

String: “ابزار Tauri+Svelte+Rust را با مدل محلی اجرا کنید؛ از چت اسپرایت و انیمیشن ۲۴‑۴۸ فریم بسازید و بسته‌های استاندارد را در مارکت‌های بازی بفروشید.”

Count.

“ابزار”5 +space1=6
“Tauri+Svelte+Rust”17 =>23
space =>24
“را”2 =>26
space=>27
“با”2=>29
space=>30
“مدل”3=>33
space=>34
“محلی”4=>38
space=>39
“اجرا”4=>43
space=>44
“کنید؛” let’s count: “کنید”4 + “;”1 =5 =>49
space=>50
“از”2=>52
space=>53
“چت”3=>56
space=>57
“اسپرایت”7=>64
space=>65
“و”1=>66
space=>67
“انیمیشن”7=>74
space=>75
“۲۴‑۴۸”5=>80
space=>81
“فریم”4=>85
space=>86
“بساژید”? Actually “بساژید” not correct. We have “بساژید”? The word is “بساژید”? Actually we want “بساژید”? No, we want “بساژید”? Let’s use “بساژید”? Hmm. The verb “to create” is “ساخت کنیم” or “سازید”. We used “بساژید”? Let’s use “بساژید”? Actually correct Persian: “بساژید” is not correct. We should say “بساژید”? The verb “to make” is “سازید”. So we can say “بساژید”? Let’s just use “بساژید”? Might be confusing. Let’s use “بساژید”? I’d rather use “بساژید”? Actually “بساژید” is not a word. Let’s use “بساژید”? I’m stuck. Let’s use “بساژید”? Hmm.

Better: use “بساژید”? No.

Let’s restructure: “و بسته‌های استاندارد را بسازید”. So verb “بساژید”? Actually “بساژید” is imperative of “بساژیدن”? Not correct. Use “بساژید”? I think correct imperative is “بساژید”? Let’s check: verb “ساخت” imperative “ساز”. So “بسته‌های استاندارد را بساز”. So we can say “بسته‌های استاندارد را بساز”. Good.

Thus phrase: “و بسته‌های استاندارد را بساز”. Let’s continue.

We had up to “فریم” then space then “بساژید”? We’ll use “بساژید”? Actually we need space then “و” then space then “بسته‌های” etc.

Let’s rewrite from “فریم”: after “فریم” we have space then “و” then space then “بسته‌های” then space then “استاندارد” then space then “را” then space then “بساژ”. Then “.”.

Let’s construct full sentence: “ابزار Tauri+Svelte+Rust را با مدل محلی اجرا کنید؛ از چت اسپرایت و انیمیشن ۲۴‑۴۸ فریم بسازید و بسته‌های استاندارد را در مارکت‌های بازی بفروشید.”

Now count again.

Segment list:

“ابزار”5
space1=6
“Tauri+Svelte+Rust”17 =>23
space=24
“را”2=>26
space=27
“با”2=>29
space=30
“مدل”3=>33
space=34
“محلی”4=>38
space=39
“اجرا”4=>43
space=44
“کنید؛”5=>49
space=50
“از”2=>52
space=53
“چت”3=>56
space=57
“اسپرایت”7=>64
space=65
“و”1=>66
space=67
“انیمیشن”7=>74
space=75
“۲۴‑۴۸”5=>80
space=81
“فریم”4=>85
space=86
“بساژید”? Actually we have “بساژید”? We wrote “بساژید”? Let’s use “بساژید”? Actually we want “بساژید”? The phrase “بساژید” is not correct. We used “بساژید”? Let’s use “بساژید”? I’m going to use “بساژید”? Hmm.

Let’s instead use “بساژید”? I’m spending too much time. Let’s just use “بساژید”? Actually the imperative of “ساخت” is “ساز”. So we can say “بسته‌های استاندارد را بساز”. So after “فریم” we have space then “و” then space then “بسته‌های” then space then “استاندارد” then space then “را” then space then “بساژ”. Wait “بساژ” is not correct; we need “بساژ”? Actually imperative “بساژ” from verb “بساژیدن”? Not.

Better: use “بساژید”? I’m stuck.

Let’s just use “بساژید”? Actually many Persian speakers use “بساژید” colloquially? Might be accepted.

Alternatively, rephrase: “و بسته‌های استاندارد را در مارکت‌های بازی قرار دهید”. That avoids verb issue.

So phrase: “و بسته‌های استاندارد را در مارکت‌های بازی قرار دهید”.

Now continue.

Let’s reconstruct sentence: “ابزار Tauri+Svelte+Rust را با مدل محلی اجرا کنید؛ از چت اسپرایت و انیمیشن ۲۴‑۴۸ فریم بسازید و بسته‌های استاندارد را در مارکت‌های بازی قرار دهید.”

Now count.

We’ll count each token.

“ابزار”5
space1=6
“Tauri+Svelte+Rust”17 =>23
space=24
“را”2=>26
space=27
“با”2=>29
space=30
“مدل”3=>33
space=34
“محلی”4=>38
space=39
“اجرا”4=>43
space=44
“کنید؛”5=>49
space=50
“از”2=>52
space=53
“چت”3=>56
space=57
“اسپرایت”7=>64
space=65
“و”1=>66
space=67
“انیمیشن”7=>74
space=75
“۲۴‑۴۸”5=>80
space=81
“فریم”4=>85
space=86
“و”1=>87
space=88
“بسته‌های” let’s count: ب(1)س(2)ت(3)ه(4)‌(5)ه(6) =>6 =>94
space=95
“استاندارد”9=>104
space=105
“را”2=>107
space=108
“در”2=>110
space=109? Wait we added space before “در”? Actually after “را” we have space then “در”. So space=108? Let’s recalc.

We had up to “را” at 107? Let’s step.

After “استاندارد” we added space then “را”. Let’s do systematically.

I’ll write the string and count using a tool mentally? Might be easier to approximate length; we need 100-125. Let’s approximate.

String: “ابزار Tauri+Svelte+Rust را با مدل محلی اجرا کنید؛ از چت اسپرایت و انیمیشن ۲۴‑۴۸ فریم بسازید و بسته‌های استاندارد را در مارکت‌های بازی قرار دهید.”

Let’s count characters using groups.

I’ll copy and count manually with indices.

I’ll write each character with index.

I’ll write the string:

ا ب ز ار T a u r i + S v e l t e + R u s t ر ا ب ا م د ل م ح ل ی ا ج ر ا ک ن ی د ؛ ا ز چ ت ا س پ ر ا ی ت و ا ن ی م ش و ن ۲ ۴ ‑ ۴ ۸ ف ر ی م ب س ا ژ ی د و ب س ت ه ه ا ا س ت ا ن د ا ر د ر ا د ر م ا ر ک ت ه ا ب ا ز ی ق ر ار د ه ی د .

This is messy.

Given time, we can assume length ~130 maybe slightly over. We need 100-125. Let’s try to shorten more.

Remove some words: maybe drop “مدل محلی”. Use “مدل”. Or drop “Tauri+Svelte+Rust” maybe keep but it’s needed.

Let’s try: “ابزار Tauri+Svelte+Rust را اجرا کنید؛ از چت اسپرایت و انیمیشن ۲۴‑۴۸ فریم بسازید و بسته‌های استاندارد را در مارکت‌های بازی قرار دهید.”

Now count roughly.

“ابزار”5 +space=6
“Tauri+Svelte+Rust”17 =>23
space=24
“را”2=>26
space=27
“اجرا”4=>31
space=32
“کنید؛”5=>37
space=38
“از”2=>40
space=41
“چت”3=>44
space=45
“اسپرایت”7=>52
space=53
“و”1=>54
space=55
“انیمیشن”7=>62
space=63
“۲۴‑۴۸”5=>68
space=69
“فریم”4=>73
space=74
“و”1=>75
space=76
“بسته‌های”6=>82
space=83
“استاندارد”9=>92
space=93
“را”2=>95
space=96
“در”2=>98
space=99
“مارکت‌های” let’s count: م(1)ا(2)ر(3)ک(4)ت(5)‌(6)ه(7) =>7 =>106
space=107
“بازی”4=>111
space=112
“قرار”4=>116
space=117
“دهید.” let’s count: د(1)ه(2)ی(3)د(4).(5) =>5 =>122

So total ~122 characters. Good within 100-125.

Thus description length ~122.

Now title: need Persian title, compelling. Let’s craft: “تولید اسپرایت با AI برای موتورهای بازی: مسیر عملی درآمد ماهانه بیش از ۱۰٬۰۰۰ دلار”. Count characters? Not required but okay.

Now categories: “محصولات دیجیتال” as string.

Tags: array of Persian short tags: [“ماده AI”,”توسعه بازی”,”SpriteMaker”,”درآمد”,”کار جزئی”].

Now keywords: Persian keywords, comma separated. Should be relevant: “تولید اسپرایت AI, SpriteMaker, بازی 2D, درآمد جانبی, ابزار Tauri”. Let’s craft.

Now frontmatter fields: slug (localized), transid, title, date, categories, tags, description, keywords, cover, thumbnail, og_image, top, recommend.

We need to keep date same as original: “2025-09-26 10:00:00”. Keep.

Now cover etc same URLs.

Now top: “false”. recommend: “true”.

Now output.

Now body: translate the post into Persian, keeping tech names, platform names, etc. Must avoid banned phrases. Must be punchy with concrete numbers.

We need to adapt any mention of Chinese platforms to local equivalents: none.

We need to keep numbers: e.g., 19.99 USD, 150 copies, 3000 USD, possible >10k USD.

We need to keep concrete numbers.

We need to avoid phrases like “In conclusion”, “Furthermore”, etc. We’ll just not use those English phrases.

Now produce Persian markdown.

Let’s craft body:

Start with a hook: “بازی‌سازهای مستقل و تیم‌های کوچک اغلب در przygot کردن اسپرایل ۲D گیر می‌کنند: رسم دستی زمان‌بر، هزینه外包 بالا، و خروجی AI معمولاً فاقد یکپارچگی، کانال آلفا و فریم‌های انیمیشن است؛ در نتیجه فقط به عنوان مفهوم استفاده می‌شود و نمی‌توان آن را مستقیماً در Unity، Godot یا Cocos وارد کرد.”

Then introduce tool: “برنامه‌ای اوپن‌سورس که بر پایهٔ Tauri، Svelte، Rust و SQLite ساخته شده و از Codex CLI برای فراخوانی مدل‌های محلی (مثل GPT‑4o یا Llama) استفاده می‌کند، این مشکل را حل می‌کند. در Windows، macOS و Linux قابل اجرا است.”

Then steps: “فقط کافیست در چت توضیح دهید، مثلاً «یک محارب زن با پلاتین، مو سبز، چشم‌های درخشان» یا یک اسکچ concept را بکشید؛ برنامه یک اسپرایت شفاف background می‌دهد. اگر بگویید «این را انیمیشن کن»، сначала عمل را برنامه‌ریزی می‌کند و سپس ۲۴‑۴۸ فریم را با حفظ هویت و استایل تولید می‌کند؛ هر فریم شامل Referance هویت و فریم‌های قبلی/بعدی است تا از انحراف جلوگیری شود.”

Then output: “نتیجهٔ خودکار در پوشه استاندارد شامل تصاویر فریم، فایل atlas و متادیتا قرار می‌گیرد؛ کافیست پوشه را به پروژه بازی خود بکشید و موتور آن را识别 و پخشloop می‌کند.”

Then monetization: “یک هنرمند بازی مستقل در Reddit پکیج «ب戦士ان خاکستری» را به اشتراک گذاشت: ۸ شخصیت، هر کدام با سه انیمیشن (Idle، Walk، Attack) و ۲۴‑۴۸ فریم. او در itch.io به قیمت ۱۹