51 lines
2.2 KiB
Markdown
51 lines
2.2 KiB
Markdown
# Локальный просмотр сайта
|
||
|
||
Сайт в режиме разработки обслуживается из папки `**public/**` через [BrowserSync](https://browsersync.io/): при изменении файлов страница в браузере обновляется сама.
|
||
|
||
## Требования
|
||
|
||
- Установлены **Node.js** и **npm** (идут вместе с Node).
|
||
|
||
## Первый раз в проекте
|
||
|
||
В корне репозитория (рядом с `package.json`):
|
||
|
||
```bash
|
||
npm install
|
||
npm run vendor:copy
|
||
```
|
||
|
||
(или `npm run build` — vendor + сборка HTML из `src/`.)
|
||
|
||
## Запуск
|
||
|
||
```bash
|
||
npm run serve
|
||
```
|
||
|
||
Скрипт [`scripts/serve-dev.mjs`](../scripts/serve-dev.mjs): статика из `public/`, API правок контента, перезагрузка **только** при изменениях в `public/**` (запись в `texts/content-edits/` вкладку не перезагружает).
|
||
|
||
Без API: `npm run serve:static`.
|
||
|
||
## Куда смотреть
|
||
|
||
- **Сайт:** [http://localhost:4175](http://localhost:4175) — откроется `public/index.html` и остальные пути относительно `public/`.
|
||
- **Панель BrowserSync UI:** [http://localhost:4176](http://localhost:4176) (опционально, для синхронизации и настроек).
|
||
|
||
## Что отслеживается
|
||
|
||
Любые изменения в `**public/**`**: HTML, CSS, JS, картинки. Папка `texts/content-edits/` **не** в watch — autosave правок не сбрасывает режим редактирования.
|
||
|
||
## API правок контента
|
||
|
||
Только с localhost:
|
||
|
||
- `GET /api/content-edits?page=cases/foo.html` — правки для страницы;
|
||
- `GET /api/content-edits` — весь `pending.json`;
|
||
- `PUT /api/content-edits?page=…` — тело: `{ page, items[] }` (мерж в общий файл).
|
||
|
||
Файл: **`texts/content-edits/pending.json`**. См. [`docs/content-edit-mode.md`](content-edit-mode.md).
|
||
|
||
## Остановка
|
||
|
||
В терминале: **Ctrl+C**. |