CDNJS/브랜드의 새로운 CDNJS 브랜딩 제안에 따라 Vue & Nuxt로 제작 된 새로운 CDNJS 웹 사이트의 홈 인 CDNJS/STATIC-WEBSITE 저장소에 오신 것을 환영합니다.
이 웹 사이트는 CDNJS API에서 완전히 의존하여 사이트를 제공하기위한 매우 낮은 리소스 사용 및 사용중인 데이터를 업데이트하기위한 제한된 앱 논리가 발생합니다 (사이트 맵 만 업데이트해야하며 페이지가로드 될 때 API 호출을 사용합니다).
이 프로젝트는 node.js에서 실행됩니다. 이 프로젝트의 .NVMRC 파일에 정의 된 요구 사항과 일치하는 버전이 설치되어 있는지 확인하십시오.
이 프로젝트에는 종속성 잠금 파일이 포함되어 있습니다. 이는 프로젝트의 모든 설치가 일관성을 위해 동일한 버전의 종속성을 사용하도록하는 데 사용됩니다.
이 잠금 파일에 따라 노드 종속성을 설치하여 다음을 실행하여 설치할 수 있습니다.
npm ci종속성이 설치되면 웹 사이트는 개발 모드에서 실행할 준비가되었습니다. 사용자 정의 서버없이 개발 모드에서 nuxt를 시작하려면 다음을 실행하십시오.
npm run dev npm run dev 실행하기 전에 'NODE_ENV' is not recognized as an internal or external command .
npm install -g win-node-env이 웹 사이트는 NUXT를 사용하여 빌드되며 웹 팩에 의존하여 사이트를 렌더링하고 상호 작용을 제공하는 데 사용되는 클라이언트 측 번들을 생성합니다. 이로 인해 Webpack의 분석기를 사용하여 최종 번들의 크기에 기여하는 내용을 더 잘 이해할 수 있습니다.
분석기를 실행하려면 다음 패키지 스크립트를 사용하십시오.
npm run dev:analyze npm run dev 또는 npm run dev:analyze 사용하여 개발중인 사이트와 함께 작업 할 때 SITE_HOST 환경 변수는 자동으로 http://localhost:3000/ 로 설정됩니다.
npm run build 및 npm run start 스크립트를 사용 하여이 사이트를 제작에 배포 할 때 SITE_HOST 환경 변수를 설정해야하며 사이트가 호스팅되는 곳의 표준 기반이어야합니다. 우리를 위해 제작에서 이것은 https://cdnjs.com/ 으로 설정됩니다.
사이트 배포를 위해 Google 웹 로그 분석을 활성화하려면 GA_ID 환경 변수를 설정해야합니다. 이는 UA-xxxxxxxxx-x 형식으로 귀하의 부동산에 대한 고유 한 Google 웹 로그 분석 ID로 설정해야합니다.
Google Analytics는 @nuxtjs/google-analytics 모듈을 사용하여 사이트와 번들로 제공됩니다. 환경 변수가 지정되지 않은 경우 Google 웹 로그 분석은 배포와 번들로 번들리지 않습니다.
기본 센트리 오류 로깅을 활성화하려면 SENTRY_DSN 환경 변수를 Sentry의 유효한 DSN URL로 설정해야합니다.
생산에서 오류보고를위한 소스 맵 및 릴리스 추적을 활성화하려면 SENTRY_ORG 및 SENTRY_PROJECT 환경 변수는 올바른 Sentry 프로젝트 정보와 함께 설정되어 있어야하며 SENTRY_AUTH_TOKEN Sentry의 유효한 인증 토큰으로 설정되어야합니다. 소스 맵은 우리가 제작에서 사용하여 사용되며, 소형화 된 번들 자바 스크립트를 사용하므로 Sourcemaps는 소스 코드에서 오류가 발생하는 위치를 보여줄 수 있도록합니다.
기본적으로 빌드 프로세스 중에 robots.txt 파일이 User-agent: * Allow: * . 사이트의 비공개 인스턴스를 원하거나 잠재적 인 SEO 오염을 방지하려면 ROBOTS_DISALLOW env var를 1 으로 설정할 수 있습니다. 이것은 Allow: * 규칙을 Disallow: / .
사이트의 SiteMap 생성을 활성화하려면 NODE_ENV production 으로 설정해야합니다. 이를 통해 빌드 중에 초기 사이트 맵 생성과 30 분마다 npm run start 중에 사이트 맵을 재생하는 백그라운드 작업을 수행 할 수 있습니다.
또한 NODE_ENV=production 사용함으로써 위에서 참조 된 robots.txt 생성 스크립트도 제공된 SITE_HOST Env var.
( npm run dev:analyze , npm run build & npm run start 의 경우 NODE_ENV 자동으로 production 으로 설정됩니다).
이 웹 사이트를 제작에 배치하려면 다음 단계를 수행해야합니다.
npm ci 로 종속성을 설치하십시오npm run build 사용하여 생산 사이트를 구축하십시오npm run start 으로 Custom Express 서버를 시작하십시오 일부 PAAS 호스트에 배치하려면 종속성 설치 및 앱 구축이 자동으로 수행되며 npm run start Procfile 에서 정의됩니다.
앱이 바인딩하는 포트를 변경하려면 스크립트를 실행할 때 PORT 환경 var를 설정하십시오.
Custom Express 서버는 NUXT의 사이트 맵을위한 경로가 너무 많기 때문에 사이트 맵을 처리하는 데 사용됩니다. 빌드 단계 ( npm run build ) 중에 초기 사이트 맵이 생성됩니다. 그런 다음 Express Server는 CDNJS API를 사용하여 30 분 마다이를 재생합니다. Express의 마지막 세대 결과를 포함하는 로그는 웹 사이트의 /sitemap-log.txt 에서 제공됩니다.
라인을위한 전체 테스트 세트는 언제든지 다음과 같이 실행할 수 있습니다.
npm test이 저장소에는 ESLINT 구성 파일과 SASS-LINT CONFIG 파일이 포함되어있어 앱에 사용되는 JS/VUE 및 SCS의 코드베이스에서 일관된 스타일을 보장하는 데 도움이됩니다.
이를 시행하기 위해 테스트에서 Eslint와 Sass-Lint를 모두 사용합니다. 모든 JavaScript 및 VUE 파일의 코드 스타일을 확인하는 Eslint를 언제든지 실행하려면 다음을 사용할 수 있습니다.
npm run test:eslintEslint는 자동 고정 기능을 제공하며 코드베이스에 대해 다음과 같이 실행할 수 있습니다.
npm run test:eslint:fix마찬가지로 Sass-Lint는 언제든지 실행하여 앱에 사용되는 모든 SCSS 파일의 품질을 실행하여 다음을 실행하여 실행할 수 있습니다.
npm run test:scss보조 패키지 인 Sass-Lint-Auto-Fix는 Sass-Lint가 제기 한 일부 오류를 자동으로 수정하는 데 도움이되며 다음과 같이 실행할 수 있습니다.
npm run test:scss:fix Eslint & Sass-Lint를 모두 실행하는 npm test 와 마찬가지로 짧은 패키지 스크립트를 사용할 수있어 실행을 통해 사용할 수있는 라인팅 패키지의 문제를 자동으로 수정하려고합니다.
npm run test:fix