On my repo version, p5 is accessed twice:
And I make sure “p5.js” runs before “index.mjs”; so p5 exists before “index.mjs” runs new p5:
new p5
Sorry, but I have no idea how Vercel would interfere w/ that loading order.