Сегодня я попытался создать мультимодульный / пакетный проект с npm.
Структура выглядит следующим образом:
root
|
|____ backend <-- npm package containing all routes
|
|____ frontend <-- npm package containing all js/html/css files
|
|____ dist <-- merged output from backend & frontend
|
|____ build_and_run.sh <-- shell script to invoke npm in both - frontend and backend and run the final application in "dist/"
Внешний интерфейс должен находиться в каталоге "dist / static".
И то, и другое: во внешнем интерфейсе и в бэкэнде используются разные зависимости и этапы компиляции (TypeScript, VueJS и т. Д.), Поэтому в настоящее время для меня наиболее целесообразно провести различие между внешним интерфейсом и внутренним интерфейсом.
Моя проблема заключается в развертывании обоих модулей / пакетов в конечном каталоге.
Копирование файлов не является проблемой, но развертывание зависимостей в каталог "dist" (например, экспресс).
Вторая цель - создать файл Docker, но этот параметр не должен быть обязательным для запуска сервера.
Если у кого-то есть лучшая структура или решение, отвечающее моим потребностям, я определенно буду рада это услышать.