Все страницы сайта

  1. Главная
  2. About us
  3. Calendar empty
  4. Calendar
  5. Contacts
  6. Course
  7. Documents
  8. Error
  9. Event -
  10. Event - 2
  11. Event - 3
  12. For partners -
  13. НМО
  14. Lector
  15. Lectors
  16. Lecture
  17. Lecture 2
  18. Legal
  19. Login
  20. News
  21. One news
  22. Partners
  23. Partner
  24. Personal Area Empty
  25. Personal Area
  26. Podcasts
  27. Preview
  28. Product
  29. Registration
  30. Search results
  31. Special project 2
  32. Special project 1
  33. Special project
  34. Special projects
  35. Sponsors
  36. Sponsor
  37. Useful materials

Программистам

настраиваем deploy на master, сборка запускается по gulp (я пока не удалял из гита build, если деплой не настоен будет то она нужна, значит делается проект на локаклке и пушится каждый раз)

Программист подключается к файлам только в папке build, в src ведется разработка, если надо создать отедльный файл стилей или скриптов, только предположим длля одного какого нибудь модуля. в scr/js или в src/scss в корне, создаем файл стилей или скриптов подключаем стили из нужных нам модулей запускаем gulp (или я могу так же в build при сборке бросать все js и css модулей)

если надо дописать какие то стили или скрипты, пишем все в шаблоне сайта template_styles , script.js, здесь код не добавляем (но этот момент нужно обсудить с програмистом, если ему будет удобно самому запускать проект то может и здесь править)

Структруа проекта

  • -buid ( файлы проекта после компиляции, здесь ничего не правим )
  • -bower_components ( библиотеки используемые в проекте, здесь ничего не правим )
  • -src ( здесь собирается весь проект )
    • -fonts ( все шрифты используемые в проекте)
    • -images (все картинки используемые в проекте)
    • -js (скрипты)
      • -lib ( библиотеки js )
      • -partials ( части js кода)
        • -base.js ( код js применяемым ко всем страницам)
      • -scripts.min.js (стили как общие для всего сайта, так и отдельно для новых разделов, пока формируем отдельно для каждого нового раздела где присутстуют новые блоки)
    • -scss (стили )
      • -helpers
        • -functions.scss ( модификаторые и function для миксинов )
        • -mixin.scss (миксины на весь проект )
        • -variables.scss (переменные на весь проект)
      • -libs библиотеки
        • -normalize.scss ( сброс всех браузерных настроек, пока не подключаем, или подключаем только для тех страниц, где не будет старых стилей)
      • -partials (части кода, в основном применяемы для всего сайта )
        • -base.scss (стили для всего сайта )
        • -buttons.scss ( стили кнопок всего проекта )
        • -forms.scss ( формы элементы форм )
        • -fonts.scss (подключение шрифтов)
        • -modifiers.scss (модификаторы и хуки, глобальные на весь проект, подходят для любого класса)
        • -styles.scss (стили конкретного раздела например)
    • -sprite-svg (svg для спрайтов, svg должны быть выполнены или через stroke или через fill, цвет однотонный для всей иконки. в спрайты помещаем только те иконки которые используются на всем проекте или почти на всем, в шапке, футуре, и т.д. не забиваем sprite лишними иконками)
    • -svg (svg используемые в проекте, подключаем через include)
    • -templates Шаблоны и страницы всего проекта
      • -extends (Наследныемые)
        • -base.pug (Стандартный шаблон всех страниц сайта)
      • -helpers (Вспомогательные элементы )
        • -mixin.pug (Миксины исползующие на всех страницах сайта)
      • -components (блоки модули из которые строятся страницы)
        • -имя блока (блока )
          • -style.scss ( стили блока )
          • -scrtip.js ( скрипты блока )
          • -template.pug ( шаблон компонента, пишется через mixin, если имеет другой вид, которые трудно передать через миксин имеет другое имя )
      • -страницы проекта ( собираем из компонентов )

Для всех каруселей и слайдеров и на сайте используем плагин slick-carousel, пока он есть в старых скриптах и стилях я пока не подключаю их в новые файлы и стили

Модальные окна на сайте работают через плагин fancybox fancybox для изображений и просто Popup.


Иконки в спрайтах

Иконки в коде

Кнопки

btn defaultbtn border

Элементы форм

Поля которые должны иметь валидацию имеют класс js-required, кнопка по которой происходит валидация класс js-submit
is-validate класс добавляется .form_group и само проверяемое поле input, textarea
is-error класс добавляется .form_group и само проверяемое поле input, textarea

Примеры попапа

Время учиться!