[{"data":1,"prerenderedAt":212},["ShallowReactive",2],{"site-settings":3,"project-simply-playback":76,"project-logs-simply-playback":96,"project-articles-simply-playback":211},{"global":4,"header":11,"footer":27},{"brandName":5,"brandStamp":6,"brandTagline":7,"communityUrl":8,"defaultSeoDescription":9,"defaultOgImage":10},"Useful Labs","est. 2025 · UK","Serious software, built out loud.","https:\u002F\u002Fcommunity.usefullabs.io","A product-led lab building production-grade platforms in the open — Sonic Artistes, Castora and more. A few times a year we take that same craft to a client build. Real software, shipped at product-team pace, shared honestly.",null,{"navLinks":12,"scarcityPulse":10,"showClock":25,"ctaLabel":26,"ctaUrl":8},[13,17,20,23],{"label":14,"url":15,"external":16},"Projects","\u002Fprojects",false,{"label":18,"url":19,"external":16},"Writing","\u002Fblog",{"label":21,"url":22,"external":16},"Tools","\u002Ftools",{"label":24,"url":8,"external":25},"The Hub",true,"Join the community",{"tagline":7,"aboutParagraph":28,"copyrightLine":29,"columns":30,"legalLinks":63},"A UK product lab, built in the open. Real production software, documented honestly — no hype, no highlights reel.","© Useful Labs {year} · Made in the UK with unusual patience.",[31,41,50],{"heading":14,"links":32},[33,36,39],{"label":34,"url":35,"external":25},"Sonic Artistes","https:\u002F\u002Fapp.sonicartistes.com",{"label":37,"url":38,"external":25},"Castora","https:\u002F\u002Fgetcastora.com",{"label":40,"url":15,"external":16},"Archive",{"heading":18,"links":42},[43,44,47],{"label":18,"url":19,"external":16},{"label":45,"url":46,"external":16},"RSS feed","\u002Frss.xml",{"label":48,"url":49,"external":16},"Newsletter","#newsletter",{"heading":51,"links":52},"Elsewhere",[53,54,57,60],{"label":24,"url":8,"external":25},{"label":55,"url":56,"external":25},"GitHub","https:\u002F\u002Fgithub.com\u002Fpaulwilliams-us",{"label":58,"url":59,"external":25},"X \u002F Twitter","https:\u002F\u002Fx.com",{"label":61,"url":62,"external":16},"Email","mailto:hello@usefullabs.io",[64,67,70,73],{"label":65,"url":66,"external":16},"Privacy","\u002Fprivacy",{"label":68,"url":69,"external":16},"Terms","\u002Fterms",{"label":71,"url":72,"external":16},"AI Policy","\u002Fai-policy",{"label":74,"url":75,"external":16},"Colophon","\u002Fcolophon",{"id":77,"slug":77,"name":78,"idLabel":79,"tagText":80,"description":81,"accent":82,"meta":85,"modules":86,"chips":87,"progress":88,"followLabel":91,"followHref":92,"siteUrl":10,"siteLabel":93,"status":94,"isFeatured":16,"isHeroFeatured":16,"publishedIso":93,"modifiedIso":93,"hero":-1,"contentHtml":93,"featuredImage":10,"screenshots":95},"simply-playback","Simply Playback","07 \u002F SP","Building","Multi-tenant, browser-based multi-track stem player for musicians. Successor to the original Sonic Artistes stem player — now a full platform where companies issue gated stems, click and backing tracks to their players under server-side IP access control. First tenant: Sonic Artistes.",{"token":83,"rgb":84},"violet","139, 92, 246",[],[],[],{"label":89,"percent":90},"Build progress",35,"Follow the build","\u002Fprojects\u002Fsimply-playback","","building",[],[97,104,109,114,120,125,131,136,141,146,152,157,162,168,173,178,183,188,194,199,205],{"id":98,"slug":99,"projectId":77,"kind":100,"title":101,"contentHtml":93,"dateLabel":102,"publishedIso":103,"commitUrl":-1,"image":-1},"497b51d2-7161-4236-9ef8-8bfc8a1aae74","sp-22-playback-prefs-backend","shipped","Per-user playback preferences (auto-follow) get their backend","today","2026-06-26T15:00:00",{"id":105,"slug":106,"projectId":77,"kind":100,"title":107,"contentHtml":93,"dateLabel":102,"publishedIso":108,"commitUrl":-1,"image":-1},"e8938e2b-b925-4481-a9c8-54bc57ed3080","sp-21-pitch-preserving-tempo","Pitch-preserving tempo — slow a track down without dropping its pitch","2026-06-26T14:00:00",{"id":110,"slug":111,"projectId":77,"kind":100,"title":112,"contentHtml":93,"dateLabel":102,"publishedIso":113,"commitUrl":-1,"image":-1},"e0914fe9-ef79-4296-bcdd-2bc44bce5462","sp-20-cockpit-redesign","The player cockpit, redesigned: premium mobile mixer, visible mute\u002Fsolo, track-type labels and determinate load bars","2026-06-26T13:00:00",{"id":115,"slug":116,"projectId":77,"kind":100,"title":117,"contentHtml":93,"dateLabel":118,"publishedIso":119,"commitUrl":-1,"image":-1},"e1129ef9-4509-4389-a344-e896fc5c1eb4","sp-19-dock-seekbar","The player dock gets an interactive seek bar","1d ago","2026-06-25T16:00:00",{"id":121,"slug":122,"projectId":77,"kind":100,"title":123,"contentHtml":93,"dateLabel":118,"publishedIso":124,"commitUrl":-1,"image":-1},"f33436b2-af41-4832-b44d-4f6748e46e17","sp-18-player-polish","Player polish: a help modal, Escape-to-stop and proper motion tokens","2026-06-25T15:00:00",{"id":126,"slug":127,"projectId":77,"kind":128,"title":129,"contentHtml":93,"dateLabel":118,"publishedIso":130,"commitUrl":-1,"image":-1},"58686a6b-6f3c-44a5-9626-305783069951","sp-17-home-personal-list-view","fixed","Fixed the personal-setlist list view on Home","2026-06-25T14:00:00",{"id":132,"slug":133,"projectId":77,"kind":100,"title":134,"contentHtml":93,"dateLabel":118,"publishedIso":135,"commitUrl":-1,"image":-1},"913d1ebc-faf0-4d7d-a96c-4b20409281f0","sp-16-portal-personal-setlists","Musicians can build their own personal setlists — a drag-to-order editor with a reachable-song picker","2026-06-25T13:00:00",{"id":137,"slug":138,"projectId":77,"kind":100,"title":139,"contentHtml":93,"dateLabel":118,"publishedIso":140,"commitUrl":-1,"image":-1},"fbf4cb1f-2d02-48e4-81e0-e6f8012e68dd","sp-15-portal-library","A reachable-only Library: every song a musician can actually play, with key, BPM and parts filters","2026-06-25T12:00:00",{"id":142,"slug":143,"projectId":77,"kind":100,"title":144,"contentHtml":93,"dateLabel":118,"publishedIso":145,"commitUrl":-1,"image":-1},"9e2e8ec3-ab8c-486e-950f-aabf15f525fc","sp-14-portal-set-view","Musicians browse setlists and open a tap-to-play set view, with sort and parts filters","2026-06-25T11:00:00",{"id":147,"slug":148,"projectId":77,"kind":100,"title":149,"contentHtml":93,"dateLabel":150,"publishedIso":151,"commitUrl":-1,"image":-1},"f3794ab0-cebd-43b5-bddf-95e7f35942dc","sp-13-portal-home-launchpad","The musician's portal begins: a Home launchpad with jump-back-in resume, Cmd-K search and a persistent player dock","2d ago","2026-06-24T16:00:00",{"id":153,"slug":154,"projectId":77,"kind":100,"title":155,"contentHtml":93,"dateLabel":150,"publishedIso":156,"commitUrl":-1,"image":-1},"69f00a22-13cc-4e57-8093-692b55a021a1","sp-11-create-from-theme","Spin up a setlist straight from a theme","2026-06-24T15:00:00",{"id":158,"slug":159,"projectId":77,"kind":100,"title":160,"contentHtml":93,"dateLabel":150,"publishedIso":161,"commitUrl":-1,"image":-1},"fef6cfce-ed8b-4003-a730-4a03f3e35d70","sp-10-themes-admin","Theme administration for setlists","2026-06-24T14:00:00",{"id":163,"slug":164,"projectId":77,"kind":100,"title":165,"contentHtml":93,"dateLabel":166,"publishedIso":167,"commitUrl":-1,"image":-1},"a9d48153-fb66-4e09-a3f2-a7b974ba321f","sp-9-setlist-running-order","Setlists get a drag-and-keyboard running order","3d ago","2026-06-23T16:00:00",{"id":169,"slug":170,"projectId":77,"kind":100,"title":171,"contentHtml":93,"dateLabel":166,"publishedIso":172,"commitUrl":-1,"image":-1},"626de077-dfbd-4a7e-ba1a-64c9e2ca247a","sp-8-mona-sans","Self-hosted Mona Sans typography","2026-06-23T15:00:00",{"id":174,"slug":175,"projectId":77,"kind":100,"title":176,"contentHtml":93,"dateLabel":166,"publishedIso":177,"commitUrl":-1,"image":-1},"b0799b3d-8b91-4deb-a3d3-58a007cf5b82","sp-7-groups","Groups: assign setlist access to a whole group at once","2026-06-23T14:00:00",{"id":179,"slug":180,"projectId":77,"kind":100,"title":181,"contentHtml":93,"dateLabel":166,"publishedIso":182,"commitUrl":-1,"image":-1},"1a2575ae-6835-4d3f-b534-08c5028115f6","sp-6-setlist-authoring","Setlist authoring arrives","2026-06-23T13:00:00",{"id":184,"slug":185,"projectId":77,"kind":100,"title":186,"contentHtml":93,"dateLabel":166,"publishedIso":187,"commitUrl":-1,"image":-1},"b3cbc982-a0be-4ea5-845b-2463e35e0939","sp-5-platform-admin-landing","Platform admins get a landing page","2026-06-23T12:00:00",{"id":189,"slug":190,"projectId":77,"kind":100,"title":191,"contentHtml":93,"dateLabel":192,"publishedIso":193,"commitUrl":-1,"image":-1},"ac7db792-2ae3-446b-b9b4-063c06a015ca","sp-4-song-stem-tweaks","Refinements to song and stem handling","4d ago","2026-06-22T15:00:00",{"id":195,"slug":196,"projectId":77,"kind":100,"title":197,"contentHtml":93,"dateLabel":192,"publishedIso":198,"commitUrl":-1,"image":-1},"2a76bc93-75d2-4a45-aa5a-32677e359a25","sp-3-songs-stems-upload","Songs, stems and protected, tenant-stamped audio upload land","2026-06-22T14:00:00",{"id":200,"slug":201,"projectId":77,"kind":100,"title":202,"contentHtml":93,"dateLabel":203,"publishedIso":204,"commitUrl":-1,"image":-1},"78d4bd81-aca0-4446-94ca-3cfec2d8e6c3","sp-1-nuxt-scaffold","Simply Playback gets its Nuxt 4 scaffold","5d ago","2026-06-21T11:00:00",{"id":206,"slug":207,"projectId":77,"kind":208,"title":209,"contentHtml":93,"dateLabel":203,"publishedIso":210,"commitUrl":-1,"image":-1},"31ce51a6-78bb-418b-8313-a5a835a2f480","sp-0-kickoff","noted","What Simply Playback is, and why we're rebuilding the stem player as a multi-tenant platform","2026-06-21T10:00:00",[],1782519037277]