hi @ali.naim - good question. We’ve all had trouble with serving assets! I would suspect it is because you are using a router or have deployed to a subdirectory. The URLs starting with “.” are relative to your current path. So, if you are at localhost/path1/ then./X will go to localhost/path1/X. For this reason it’s better to use an absolute path.
Since you are using public then maybe you have React installed, if so and you are using CRA then a convenience is provided:
If you are deploying to a static subfolder then the homepage needs to be set - there are instructions when you
npm run build.
If you aren’t using React then have a look in your network tab and see what is being served as well as looking up what many bundlers call a base or root url. Depending on your webserver it could also be an issue with setting up mime types or serving different file extensions - you can try that out with common ones like ‘jpg’.