post: how I made my own songs with Suno AI (case study with embedded players + LRC sync, EN+ZH)
Deploy / build (push) Successful in 15s

This commit is contained in:
2026-09-11 16:36:01 +08:00
parent 30a1963bea
commit 8e595d0f93
6 changed files with 833 additions and 2 deletions
+20 -1
View File
@@ -268,7 +268,7 @@ const BANNERS = {
],
},
'ai-furniture-compositing-with-flux-kontext': {
'ai-furniture-compositing-with-flux-kontext': {
titlebar: 'client — furniture compositing PoC',
lines: [
{ t: 'prompt', text: '$' }, { t: 'cmd', text: 'POST fal-ai/flux-pro/kontext/multi · 2 photos in' },
@@ -284,6 +284,25 @@ const BANNERS = {
{ n: '5', label: '1 room out ✓' },
],
},
'how-i-made-my-own-songs-with-suno-ai': {
titlebar: 'hoelee@studio — suno v6 · 7 songs',
lines: [
{ t: 'prompt', text: '$' }, { t: 'cmd', text: 'write lyrics · craft style prompt (200 chars)' },
{ t: 'prompt', text: 'INFO' }, { t: 'cmd', text: '[Verse][Chorus][Bridge] · [Whispered][Belted]' },
{ t: 'prompt', text: 'INFO' }, { t: 'cmd', text: 'generate 35 takes → keep best' },
{ t: 'prompt', text: 'WARN' }, { t: 'err', text: 'AI vocalist mispronounces 忘川 — respell test clip' },
{ t: 'prompt', text: '$' }, { t: 'cmd', text: 'v6: section edit · single-line swap · voices' },
{ t: 'prompt', text: '' }, { t: 'ok', text: '→ 7 songs hosted · embedded above ✓' },
],
flow: [
{ n: '1', label: 'lyrics first' },
{ n: '2', label: 'style prompt' },
{ n: '3', label: 'metatags' },
{ n: '4', label: 'iterate takes' },
{ n: '5', label: 'ship ✓' },
],
},
};
const DEFAULT_BANNER = {
+6 -1
View File
@@ -94,10 +94,15 @@ const TERMINALS = {
<div class="line"><span class="prompt">&nbsp;</span><span class="err">refusing: local divergence · never --force</span></div>
<div class="line"><span class="prompt">$</span><span class="cmd">diff -rq live skills · merge on conflict</span><span class="fix">→ synced ✓</span></div>`,
'ai-furniture-compositing-with-flux-kontext': `
'ai-furniture-compositing-with-flux-kontext': `
<div class="line"><span class="prompt">$</span><span class="cmd">fetch fal-ai/flux-pro/kontext/multi · 2 photos in</span></div>
<div class="line"><span class="prompt">&nbsp;</span><span class="err">toDataURL: tainted canvas · may not be exported</span></div>
<div class="line"><span class="prompt">$</span><span class="cmd">enhance_prompt:false · same-origin paths</span><span class="fix">→ 1 room out ✓</span></div>`,
'how-i-made-my-own-songs-with-suno-ai': `
<div class="line"><span class="prompt">$</span><span class="cmd">suno "indie folk · playful whistles · sprite-girl vocals"</span></div>
<div class="line"><span class="prompt">&nbsp;</span><span class="fix">lyrics + metatags → 7 songs shipped ✓</span></div>
<div class="line"><span class="prompt">$</span><span class="cmd">v6: section edits · single-line swaps · voices</span></div>`,
};
const DEFAULT_TERMINAL = `