Sass — это мощный препроцессор, который расширяет возможности CSS. При работе над более крупными проектами наличие хорошо организованной структуры проекта может сделать ваш код более удобным для поддержке. В этой статье мы рассмотрим некоторые рекомендации по структурированию проекта Sass.

Вот пример структуры проекта, которую вы можете использовать в качестве отправной точки для ваших проектов с использованием Sass:

my-sass-project/
├── scss/
│   ├── abstracts/
│   │   ├── _variables.scss
│   │   ├── _functions.scss
│   │   ├── _mixins.scss
│   │   └── _placeholders.scss
│   ├── base/
│   │   ├── _reset.scss
│   │   ├── _typography.scss
│   │   ├── _grid.scss
│   │   └── _utilities.scss
│   ├── components/
│   │   ├── _button.scss
│   │   ├── _form.scss
│   │   └── _card.scss
│   ├── layout/
│   │   ├── _header.scss
│   │   ├── _footer.scss
│   │   └── _sidebar.scss
│   ├── pages/
│   │   ├── _home.scss
│   │   ├── _about.scss
│   │   └── _contact.scss
│   ├── themes/
│   │   ├── _theme.scss
│   │   └── _theme-dark.scss
│   ├── vendors/
│   │   └── _normalize.scss
│   └── main.scss
├── css/
│   └── main.css
├── index.html
└── README.md

Давайте подробнее рассмотрим каждый каталог и файл:

  • scss/: Этот каталог содержит все файлы Sass.
  • abstracts/: Этот каталог содержит файлы Sass, которые определяют глобальные переменные, функции, микшины и заполнители. Эти файлы содержат код, который сам по себе не выводит никакого CSS, но вместо этого предоставляет функциональность, которая может быть использована в других файлах Sass.
  • base/: Содержит файлы Sass, которые определяют основные стили сайта. Каталог может содержать такие файлы, как сброс стилей, типография, сеточная система и утилиты.
  • components/: Содержит файлы Sass, которые определяют повторно используемые компоненты пользовательского интерфейса. Это могут быть стили для кнопок, форм, карточек и других UI-элементов.
  • layout/: Этот каталог содержит файлы Sass, которые определяют макет сайта. Эти файлы определяют стили для шапки сайта, футера и боковой панели.
  • pages/: Содержит файлы Sass, которые определяют стили, специфичные для каждой страницы вашего сайта.
  • themes/: Этот каталог содержит файлы Sass, которые определяют темы вашего сайта. Здесь могут содержаться стили для светлых и темных тем.
  • vendors/: Содержит файлы Sass, которые импортируют сторонние библиотеки CSS, такие как Normalize.css.
  • main.scss: Этот файл импортирует все остальные файлы Sass и служит точкой входа вашего приложения.
  • css/: Этот каталог содержит скомпилированный CSS-файл.
  • index.html: Этот файл представляет собой образец HTML-файла, который импортирует скомпилированный CSS-файл.
  • README.md: Этот файл содержит информацию о проекте и о том, как его запустить.

Использование данной структуры проекта может помочь вам сохранить ваш код Sass организованным и поддерживаемым. Разделив свой код на логические каталоги, вы сможете легче находить нужные стили и вносить изменения, не затрагивая несвязанный код.

 

Комментарии

1

Без регистрации и смс

  • Никитос дикий пёс:

    Очень интересно, попробую воспользоваться данной архитектурой, но мне как новичку в sass было бы интересно постреть на пример организации такой структуры в каком-нибдуь проекте, мб ссылки на github.