[SCSS] Architecture (폴더 구조)

2023. 12. 11. 00:47·Mark Up & StyleSheet/CSS & SCSS

SCSS Architecture (7-1 패턴)

📁 scss/
|
|– 📁 abstracts/             
|   |– 📄 _var.scss          # 각종 변수
|   |– 📄 _mixins.scss       # Mixin
|	|– 📄 _function.scss     # 함수
|
|– 📁 vendors/
|   |– 📄 _swiper.scss       # 외부 라이브러리
|   |– 📄 _datepicker.scss   # 외부 라이브러리
|
|– 📁 base/
|   |– 📄 _reset.scss        # Reset/normalize
|   |– 📄 _typography.scss   # Typography rules
|   |– 📄 _print.scss        # print rules
|
|– 📁 layout/
|   |– 📄 _gnb.scss          # Global Navigation
|   |– 📄 _grid.scss         # Grid system
|   |– 📄 _header.scss       # Header
|   |– 📄 _footer.scss       # Footer
|   |– 📄 _sidebar.scss      # Sidebar
|   |– 📄 _forms.scss        # Forms
|   |– 📄 _spaces.scss       # 여백
|   |– 📄 _aligns.scss       # 정렬
|   |– 📄 _tables.scss       # 테이블
|
|– 📁 components/
|   |– 📄 _buttons.scss      # Buttons
|   |– 📄 _badges.scss       # Badges
|   |– 📄 _tab.scss          # Tab
|   |– 📄 _tooltips.scss     # Tooltips
|
|– 📁 pages/
|   |– 📄 _home.scss         # Home page
|   |– 📄 _contact.scss      # Contact page
|   |– 📄 _about.scss        # About page
|
|– 📁 themes/
|   |– 📄 _theme.scss        # Default theme
|
 – 📄 style.scss             # 찐 사용파일
  • abstracts : 프로젝트 전체에 사용되는 변수, 믹스인, 함수, 플레이스 홀더 등을 배치
  • base : reset, normalize, font정의 등 HTML요소의 표준 스타일
  • vendors : 외부 라이브러리 스타일 (재정의, 거의 overwriting)
  • layout : 사이트 구조에 해당하는 레이아웃인 gnb, header, footer 등을 정의
  • components : 작은 구성요소로 재사용이 가능한 코드 집합체
  • pages : 컴포넌트로 표현하지 못한 각기 다른 페이지의 구체적인 스타일
  • themes : 웹서비스 사용자에 따라 적용하는 레이아웃 또는 다크 모드와 같은 접근성에 따라 배치

📄 style.scss

작성순서 : 변수 -> 믹스인 -> 리셋 -> 각각의 폴더별

@use "sass:math";

@import '/scss/abstracts/var'; // 변수
@import '/scss/abstracts/function'; // 함수
@import '/scss/abstracts/mixins'; // 믹스인
@import '/scss/base/reset'; // 리셋
@import '/scss/base/typography'; // 타이포
@import '/scss/base/print'; // 프린트

// 외부 라이브러리
@import 'swiper/scss';
@import 'swiper/scss/navigation';
@import 'swiper/scss/pagination';
@import 'react-range-slider-input/dist/style.css';
@import 'aos/dist/aos.css';
@import "vendor/datepicker";

// layout
@import '/scss/layout/header'; // 헤더
@import '/scss/layout/footer'; // 푸터
@import '/scss/layout/table'; // table
@import '/scss/layout/align'; // 정렬
@import '/scss/layout/space'; // 마진 패딩
@import '/scss/layout/sideNav'; // sideNav

// components
@import '/scss/components/button';
@import '/scss/components/badge'; 
@import '/scss/components/tooltip'; 

// pages
@import '/scss/pages/home';
@import '/scss/pages/contact'; // contact
@import '/scss/pages/about'; // about

 

📌 참고

 

hello.

hello.

matthewelsom.com

 

반응형

'Mark Up & StyleSheet > CSS & SCSS' 카테고리의 다른 글

flex deep dive  (0) 2023.12.29
pre 태그 줄바꿈하기  (0) 2023.12.14
[CSS] filter 적용하기  (1) 2023.12.10
[CSS] 헷갈리는 가상클래스 child vs of-type  (2) 2023.12.10
[CSS] CSS 명시도 계산법  (0) 2023.11.04
'Mark Up & StyleSheet/CSS & SCSS' 카테고리의 다른 글
  • flex deep dive
  • pre 태그 줄바꿈하기
  • [CSS] filter 적용하기
  • [CSS] 헷갈리는 가상클래스 child vs of-type
전예방
전예방
  • 전예방
    예방이의 개발일기
    전예방
  • 전체
    오늘
    어제
    • All (125) N
      • Info & Tip (2)
      • 유용한 사이트들 (5)
      • Mark Up & StyleSheet (23)
        • HTML (6)
        • CSS & SCSS (10)
        • 반응형 (6)
      • Frontend (66) N
        • 전체 (10) N
        • JavaScript & Jquery (18)
        • TypeScript (0)
        • React (26)
        • Next.js (3)
        • 성능최적화 (2)
        • 웹접근성 (2)
      • Backend (13)
        • Python (1)
        • JAVA (2)
        • node.js (0)
        • PHP (7)
        • 패키지매니저 (3)
      • Markdown (0)
      • SCM (1)
        • Git&Github (1)
        • SVN (0)
      • IDE (4)
        • VSCode (2)
        • IntelliJ (1)
        • Ecplise (1)
      • 취미생활 (3)
      • 정보처리기사 (2)
      • 코딩자율학습단 (5)
        • 12기 (파이썬) (5)
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

    • velog
    • github
  • 공지사항

  • 인기 글

  • 태그

    php
    Admin
    CSS
    Python
    반응형
    코딩자율학습단
    Chart.js
    React Swiper
    TypeScript
    리액트
    react
    회원가입
    swiper.js
    관리자 페이지
    frontend
    나도코딩
    코딩자율학습
    NPM
    yarn berry
    파이썬
  • 최근 댓글

  • 최근 글

  • 반응형
  • hELLO· Designed By정상우.v4.10.3
전예방
[SCSS] Architecture (폴더 구조)
상단으로

티스토리툴바