You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Для работы с репозиторием на вашем компьютере потребуется Git и Node.js (18.x.x). Перед началом работы убедитесь, что все программы работают. Для этого в терминале введите:
6
-
- для git
7
-
```bash
8
-
git --version
9
-
```
10
-
git примерно ответит
11
-
```bash
12
-
git version 2.42.0.windows.1
13
-
```
14
6
15
-

7
+
Для работы с репозиторием на вашем компьютере потребуется _Git_ и _Node.js_. Перед началом работы убедитесь, что все программы работают. Для этого в терминале введите:
16
8
17
-
версия не важна. Главное, что git отреагировал и написал ответ
9
+
- для _Git_
18
10
19
-
- для node.js
20
-
```bash
21
-
node -v
22
-
```
23
-
node.js примерно ответит
24
-
```bash
25
-
v18.18.0
26
-
```
11
+
```shell
12
+
git --version
13
+
```
14
+
15
+
_Git_ примерно ответит
16
+
17
+
```shell
18
+
git version 2.42.0.windows.1
19
+
```
20
+
21
+

22
+
23
+
версия не важна. Главное, что git отреагировал и написал ответ
24
+
25
+
- для _Node.js_
26
+
27
+
```shell
28
+
node -v
29
+
```
30
+
31
+
_Node.js_ примерно ответит
32
+
33
+
```shell
34
+
v18.18.0
35
+
```
36
+
37
+

38
+
39
+
важно, чтобы была действующая LTS версия (первое число — чётное), то есть не ниже 20.9 или не ниже 18.18.
└── package.json # Зависимости проекта, скрипты, настройки проекта
65
90
└── package-lock.json # Зависимости проекта
66
91
└── README.md # Документация
67
92
```
68
93
69
94
## Основные команды
70
-
-`npm start` - запускает сборку с сервером для разработки проекта
71
-
-`npm run build` - создаёт папку `build` с оптимизированными файлами для продакшена
95
+
96
+
- `npm start` - запускает сборку с сервером для разработки проекта
97
+
- `npm run build` - создаёт папку `build` с оптимизированными файлами для продакшена
72
98
73
99
## Дополнительные команды
74
-
-`npm run optimizeImages` - создаёт оптимизированные изображения в `source/images/`
75
-
-`npm run preview` - посмотреть результат работы prod-версии сборки
76
-
-`npm run lint` - запустить все проверки. Занимает длительное время
77
-
-`npm run lint:bem` - проверить правильно использования БЭМ
78
-
-`npm run lint:markup` - проверить HTML-разметку через W3C-валидатор
79
-
-`npm run lint:styles` - проверить проект на совместимость с stylelint
80
-
-`npm run lint:spaces` - проверить отступы с помощью editorConfig
81
-
-`npm run lint:html` - проверить разметку по правилам linthtml
82
-
83
-
## Работа с разметкой
84
-
Все HTML-файлы с разметкой складывайте в папку `source/`.
85
-
86
-
```bash
100
+
101
+
- `npm run optimizeImages` - создаёт оптимизированные изображения в `source/images/`
102
+
- `npm run preview` - позволяет посмотреть результат работы prod-версии сборки
103
+
- `npm run lint` - запускает все проверки (занимает длительное время)
104
+
- `npm run lint:bem` - проверяет правильное использование БЭМ в разметке
105
+
- `npm run lint:markup` - проверяет HTML-разметку через W3C-валидатор
106
+
- `npm run lint:styles` - проверяет проект на совместимость с stylelint
107
+
- `npm run lint:spaces` - проверяет отступы с помощью editorConfig
108
+
- `npm run lint:html` - проверяет разметку по правилам linthtml
109
+
- `npm run lint:js` - проверяет скрипты по правилам eslint
110
+
111
+
## Работа с разметкой
112
+
113
+
Все HTML-файлы с разметкой складывайте в папку `source/`.
114
+
115
+
```shell
87
116
├── source/
88
117
│ ├── index.html
89
118
│ ├── catalog.html
90
119
│ └── form.html
91
120
```
92
121
93
-
из папки `source/` сборка переносит файлы впапку `build/`.
122
+
Из папки `source/` сборка переносит файлы впапку `build/`.
94
123
95
-
```bash
124
+
```shell
96
125
├── build/
97
126
│ ├── index.html
98
127
│ ├── catalog.html
99
128
│ └── form.html
100
129
```
101
130
102
-
## Работа со стилями
103
-
Все стили находятся в папке `source/sass/`.
131
+
## Работа со стилями
104
132
105
-
```bash
133
+
Все стили находятся в папке `source/sass/`.
134
+
135
+
```shell
106
136
├── source/
107
137
│ ├── sass
108
138
│ │ └── blocks/
@@ -113,9 +143,8 @@ v18.18.0
113
143
│ │ └── variables.scss
114
144
```
115
145
116
-
Все БЭМ-блоки иостальные препроцессорные файлы подключайте в`source/sass/styles.scss`.
146
+
Все БЭМ-блоки иостальные препроцессорные файлы подключайте в`source/sass/styles.scss`.
117
147
118
-
_styles.scss_
119
148
```scss
120
149
/* GLOBAL */
121
150
@import "global/variables";
@@ -126,48 +155,52 @@ _styles.scss_
126
155
@import "blocks/header";
127
156
```
128
157
129
-
БЭМ-блоки импортируйте всекцию `/* BLOCKS */`.
158
+
БЭМ-блоки импортируйте всекцию `/* BLOCKS */`.
130
159
131
160
Все препроцессорные файлы сборка обработает и превратит в `styles.css`. Файл `styles.css` сборка перенесёт в
132
161
133
-
```bash
162
+
```shell
134
163
├── build/
135
164
│ └── css/
136
165
│ └── styles.css
137
166
```
138
167
139
-
## Работа с графикой
140
-
Абсолютно всю графику складывайте в `source/.raw`.
141
-
После того как добавите графику сразу запускайте команду `npm run optimizeImages` для оптимизации графики и создания `.webp`-версии. Команду нужно запускать один раз при появлении новой графики в проекте.
142
-
Новая оптимизированная графика появится в `source/images`.
168
+
## Работа с графикой
169
+
170
+
Абсолютно всю растровую графику с двухкратной плотностью из макета складывайте в `source/.raw`. Здесь графика игнорируется гитом.
143
171
144
-
Векторную графику для спрайта складывайте в `source/images/icons/`. Автоматизация создаст из иконок файл `stack.svg`.
172
+
После того как добавите графику сразу запускайте команду `npm run optimizeImages` для оптимизации графики и создания `.webp`-версии. Команду нужно запускать один раз при появлении новой графики в проекте.
145
173
146
-
```bash
174
+
Новая оптимизированная графика разной плотностью и суффиксами плотности в именах файлов появится в `source/images`. Эту, уже оптимизированную графику нужно коммитить.
175
+
176
+
Векторную графику для спрайта складывайте в `source/images/icons/`. Автоматизация создаст из иконок файл `stack.svg`.
177
+
178
+
```shell
147
179
├── source/
148
180
│ ├── .raw/
149
181
│ ├── images/
150
182
│ │ └── icons/
151
183
```
152
184
153
-
Всю графику автоматизация перенесёт в`build/images/`.
185
+
Всю графику автоматизация перенесёт в`build/images/`.
154
186
155
-
```bash
187
+
```shell
156
188
├── build/
157
189
│ └── images/
158
-
│ └── icons # папка дляспрайта
159
-
│ └── stack.svg # спрайт
190
+
│ └── icons # папка дляспрайта
191
+
│ └── stack.svg # спрайт
160
192
│ ├── bg.jpg
161
193
│ ├── bg.webp
162
194
│ ├── hero.png
163
195
│ ├── hero.webp
164
196
│ └── burger.svg
165
197
```
166
198
167
-
## Работа со шрифтами
168
-
Все шрифтовые файлы лежат в `source/fonts/`. Сборка переносит их в `build/fonts/`.
199
+
## Работа со шрифтами
200
+
201
+
Все шрифтовые файлы лежат в `source/fonts/`. Сборка переносит их в `build/fonts/`.
169
202
170
-
```bash
203
+
```shell
171
204
├── build/
172
205
│ └── fonts/
173
206
│ ├── open-sans.woff2
@@ -176,54 +209,60 @@ _styles.scss_
176
209
│ └── open-sans-bold.woff
177
210
178
211
```
179
-
## Работа со скриптами
180
-
Все скрипты лежат в `source/script/`.
181
212
182
-
```bash
213
+
## Работа со скриптами
214
+
215
+
Все скрипты лежат в `source/script/`.
216
+
217
+
```shell
183
218
├── source/
184
219
│ ├── js
185
220
│ │ ├── script.js
186
221
│ │ └── modal.js
187
222
```
188
223
189
-
Сборка переносит их в `build/script/`.
190
-
```bash
224
+
Сборка переносит их в `build/script/`.
225
+
226
+
```shell
191
227
├── build/
192
228
│ ├── js
193
229
│ │ ├── script.js
194
230
│ │ └── modal.js
195
231
```
196
232
197
-
## Работа со сторонними библиотеками
198
-
Для удобства внесения сторонних библиотек в ваш проект, вы можете использовать папку vendor. В этой папке вы можете размещать любые файлы, связанные с внешними библиотеками.
233
+
## Работа со сторонними библиотеками
234
+
235
+
Для удобства внесения сторонних библиотек в ваш проект, вы можете использовать папку `source/vendor/`. В этой папке вы можете размещать любые файлы, связанные с внешними библиотеками.
199
236
200
-
Например, предположим, что вы хотите добавить впроект библиотеку, которая включает всебя как стилевой файл library.css, так искрипты library.js. Чтобы интегрировать их вваш проект, следуйте этим шагам:
237
+
Например, предположим, что вы хотите добавить впроект библиотеку, которая включает всебя как стилевой файл `library.css`, так искрипты `library.js`. Чтобы интегрировать их вваш проект, следуйте этим шагам:
201
238
202
-
Положите файлы библиотеки впапку vendor, как показано ниже:
239
+
Положите файлы библиотеки впапку `source/vendor/`, как показано ниже:
203
240
204
-
```bash
241
+
```shell
205
242
├── source/
206
243
│ └── vendor/
207
244
│ ├── library.css
208
245
│ └── library.js
209
246
```
210
247
211
-
Если у вас есть несколько библиотек с разными файлами, вы можете группировать файлы одной библиотеки в ее собственную подпапку. Например:
212
-
```bash
248
+
Если у вас есть несколько библиотек с разными файлами, вы можете группировать файлы одной библиотеки в ее собственную подпапку. Например:
249
+
250
+
```shell
213
251
├── source/
214
252
│ └── vendor/
215
253
│ └── library/
216
254
│ ├── library.css
217
255
│ └── library.js
218
256
```
219
257
220
-
При сборке вашего проекта, все файлы из папки vendor будут включены в папку build, сохраняя их структуру. Например:
221
-
```bash
258
+
При сборке вашего проекта, все файлы из папки `source/vendor/` будут включены в папку `build/vendor/`, сохраняя их структуру. Например:
259
+
260
+
```shell
222
261
├── build/
223
262
│ └── vendor/
224
263
│ └── library/
225
264
│ ├── library.css
226
265
│ └── library.js
227
266
```
228
267
229
-
Таким образом, вы можете удобно организовать ивнедрить сторонние библиотеки вваш проект, сохраняя их структуру впапке vendor.
268
+
Таким образом, вы можете удобно организовать ивнедрить сторонние библиотеки вваш проект, сохраняя их структуру впапке `source/vendor/`.
0 commit comments