Очень просто. Пустой сайт.
А если серьезно. Это интернет и публичный доступ. Все то отображается, строится из информации полученной клиентом. Скрыть эту информацию можно или не передавая ее вообще (пустой сайт) или передавать так что ее было не эффективно с ходу расшифровывать. Конечно, если кто-то задастся целью что-то скопировать или подсмотреть - он это сделает. Ваша задача сделать этот процесс менее эффективным. При этом, в идеале это не должно отразиться на работоспособности проекта.
Это всякого рода:
- Обфускация - чтобы код было сложно читать
- Препроцессоры - чтобы усложнить копирование вашего кода
- Всякого рода сборщики - когда красивый код с Вашего компьютера перед деплоем оптимизируется в трудночитаемый монолитный файл
- Перенос логики на бекенд. Не хотите показывать, что берете ресурсы со стороны или не хотите раскрывать логику на фронте - делаете все на сервере и возвращает готовый ответ со всеми необходимыми собранными, обфусцированными и оптимизированными данными