diff --git a/docs/convention.md b/docs/convention.md index d9c84de..7269295 100644 --- a/docs/convention.md +++ b/docs/convention.md @@ -25,6 +25,7 @@ - TailwindCSS 기본 사용 - 다크 인증(`signin`/`signup`)의 텍스트 입력에는 `auth-form-input` 클래스를 붙여 `main.css`의 글자색·캐럿·placeholder를 적용한다(폼 컨트롤은 부모 `color`를 상속하지 않는 경우가 많음). +- Tailwind 엔트리는 `nuxt.config.js`의 `tailwindcss.cssPath: '~/assets/css/main.css'`로 통일한다(`@nuxtjs/tailwindcss` 기본 `assets/css/tailwind.css` 부재 시 패키지 `tailwind.css`가 중복 주입될 수 있음). - 관리자 글 에디터는 블록 단위 UI로 작성하되 저장 값은 기존 마크다운 문자열을 유지 ```html diff --git a/docs/history.md b/docs/history.md index c48d8d7..b54c036 100644 --- a/docs/history.md +++ b/docs/history.md @@ -1,5 +1,11 @@ # 의사결정 이력 +## 2026-05-11 v0.0.63 + +### Tailwind 엔트리 단일화 + +`@nuxtjs/tailwindcss` 기본 `cssPath`는 `assets/css/tailwind.css`인데 저장소에 해당 파일이 없으면 모듈이 패키지 내 `tailwind.css`를 `nuxt.options.css` 앞에 끼워 넣는다. 프로젝트는 이미 `main.css`에 `@tailwind`와 커스텀 `@layer`를 두고 있어 두 엔트리가 겹치면 유틸·레이어 순서가 기대와 달라질 수 있다. `tailwindcss.cssPath`를 `main.css`로 고정하고, JIT `content`에 composables·modules·plugins를 포함해 클래스 수집을 보강했다. + ## 2026-05-11 v0.0.62 ### 인증 폼 다크 스타일이 안 보이던 현상 diff --git a/docs/map.md b/docs/map.md index adeb6c7..ae4c559 100644 --- a/docs/map.md +++ b/docs/map.md @@ -173,7 +173,7 @@ | 파일 | 기능 | |------|------| | package.json | Nuxt 실행 스크립트와 의존성 | -| nuxt.config.js | Nuxt 앱 설정, Tailwind 모듈 연결, 관리자 QA를 위한 개발 도구 비활성화 | +| nuxt.config.js | Nuxt 앱 설정, `tailwindcss.cssPath`로 `main.css` 단일 엔트리, Tailwind 모듈, 관리자 QA를 위한 개발 도구 비활성화 | | tailwind.config.js | Tailwind 테마 설정 | | assets/css/main.css | 전역 스타일, `#fcfcfc` 단일 배경 기준, 좌측 사이드바/그리드 전환 애니메이션, 네비게이션 세로 바 hover 효과 | | composables/useMenuState.js | 좌측 메뉴 열림 상태·`closeMenu`(모바일 백드롭 등) | diff --git a/docs/spec.md b/docs/spec.md index 9294786..bb4a17a 100644 --- a/docs/spec.md +++ b/docs/spec.md @@ -8,6 +8,7 @@ - **참조**: Ghost(관리자 UX/글쓰기), Thred 테마(사용자 화면) - **현재 상태**: Nuxt 3.21(SSR)·PostgreSQL 저장소 계층 구성 완료. Node가 SSR 번들의 `#internal/nuxt/paths`를 해석하도록 루트 `package.json` `imports`와 `modules/nuxt-ssr-paths-write.mjs`(`.nuxt/paths.mjs` 디스크 기록)을 둔다. - **원격 저장소**: https://git.sori.studio/zenn/sori.studio.git +- **스타일**: Tailwind 엔트리는 `assets/css/main.css` 한 곳(`nuxt.config`의 `tailwindcss.cssPath`)이며, `tailwind.config.js`의 `content`가 Vue·composables·modules·plugins를 스캔한다. --- diff --git a/docs/update.md b/docs/update.md index 604ee04..c34f3d0 100644 --- a/docs/update.md +++ b/docs/update.md @@ -1,5 +1,10 @@ # 업데이트 이력 +## v0.0.63 + +- `tailwindcss.cssPath`를 `~/assets/css/main.css`로 지정해, 없는 기본 경로 때문에 `node_modules/tailwindcss/tailwind.css`가 추가로 주입되던 이중 `@tailwind` 로딩을 제거. +- `tailwind.config.js` `content`에 `composables`·`modules`·`plugins` 스캔 경로 추가. + ## v0.0.62 - 다크 인증 페이지에서 `input`이 UA 기본색으로 남아 글자·아이콘이 안 보이던 문제를 `main.css`의 `.auth-form-input`(글자색·캐럿·placeholder·autofill)로 보정. diff --git a/nuxt.config.js b/nuxt.config.js index 9f13e18..00dd771 100644 --- a/nuxt.config.js +++ b/nuxt.config.js @@ -8,6 +8,13 @@ export default defineNuxtConfig({ enabled: false }, modules: ['./modules/nuxt-ssr-paths-write.mjs', '@nuxtjs/tailwindcss'], + /** + * 기본 cssPath(assets/css/tailwind.css)가 없으면 패키지의 tailwind.css가 먼저 주입되어 + * main.css와 @tailwind 이중 로딩·스타일 꼬임이 날 수 있어 엔트리를 main.css로 통일한다. + */ + tailwindcss: { + cssPath: '~/assets/css/main.css' + }, components: [ { path: '~/components', diff --git a/package.json b/package.json index aa8c188..e0acdef 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "sori.studio", - "version": "0.0.62", + "version": "0.0.63", "private": true, "type": "module", "imports": { diff --git a/tailwind.config.js b/tailwind.config.js index 5ceffa4..107b1b8 100644 --- a/tailwind.config.js +++ b/tailwind.config.js @@ -2,8 +2,11 @@ export default { content: [ './components/**/*.{vue,js}', + './composables/**/*.{js,vue}', './layouts/**/*.vue', + './modules/**/*.{js,mjs}', './pages/**/*.vue', + './plugins/**/*.{js,mjs}', './app.vue', './error.vue' ],