I'm creating a Template library for a client. The goal of the library is to provide a standardized shell for all the websites the company owns. Other developers should be able to import the library with Composer and create a base template with a few lines of code, e.g.:
$Template = new Template;
$Template->setContent('Hello world!');
$Template->render();
This will render the content inside the standardized shell. This is a simplified example, the library provides much more functionality such as standardized sliders, menu's etc...
This library depends on Twig, but it also depends on a bunch of front-end assets; like custom images, javascripts, css and 3rd party stuff like Jquery and Bootstrap CSS. Those assets are stored in the /assets/ folder.
After installing the library with Composer, everything is stored in the /vendors/ folder, which is in the root of the website. But the /assets/ folder needs to be in the /public_html/ to be accessible.
The solution for now: just copy the /assets/ folder to the /public_html/. But I'm sure there are more repositories depending on front-end assets, what is the most common way to make those assets available in /public_html/?