How do I configure bud properly?

What is missing from the docs? FWIW, L9-11 and L15-18 of your Bud config do not look correct for what you’re trying to accomplish

Ref: bud.setPath | bud.js
Ref: bud.entry | bud.js

Untested, but try something like:

...

    .setPath({
      "@src": "assets",
      "@dist": "public",
    })

    .entry({
      app: ["scripts/app", "styles/app"],
      editor: ["scripts/editor", "styles/editor"],
    })

...