Nera는 정말 간단한 정적 사이트 생성기입니다. 정적 HTML 파일을 생성합니다
마크 다운 파일.
이 소프트웨어가 아직 개발 중이라는 사실에주의하십시오. 이전 버전과 호환되지 않는 변경 사항이있을 수 있습니다.
시스템에서 최소한 노드 버전 10.2를 실행하십시오.
git clone [email protected]:seebaermichi/nera.git
# Install dependencies
npm install
# Run local server (browser-sync)
npm run serve
# Render the static files
npm run render
# Local development
npm start
|-- assets/
|-- config/
|-- app.yaml
|-- pages/
|-- src/
|-- plugins/
|-- plugin-helper.js
|-- core.js
|-- index.js
|-- render.js
|-- setup-plugins.js
|-- views/
|-- index.js
웹 사이트에서 사용되는 모든 CSS, JavaScript, 글꼴 및 이미지 파일입니다. 렌더 프로세스 중에 모든 자산은 public
디렉토리에 복사됩니다.
여기에서는 웹 사이트의 글로벌 설정을 정의 할 수 있습니다. 모든 글로벌 설정은 config/app.yaml
로 이동해야합니다. Lang, Name 등과 마찬가지로 소스 또는 플러그인 파일 내의 data.app
객체 또는보기 파일 내에서 app
객체로 사용할 수 있습니다.
페이지 디렉토리 내에서 실제로 메타 정보 또는 설정 및 페이지 내용을 포함하는 Markdown 파일을 추가합니다. 아래 마크 다운 파일에 대한 자세한 내용을 확인하십시오.
src
디렉토리에는 앱 자체가 포함되어 있습니다. 여기에는 core.js
, index.js
, render.js
및 setup-plugins.js
파일이 마크 다운 파일을 읽고 설정을 받고 플러그인을로드하고 자산을 복사하고 HTML 파일을 puplic
으로 렌더링하는 파일을 찾을 수 있습니다. 접는 사람.
src
폴더에는 plugins
폴더도 포함되어 있습니다. 그것에 당신은 추가 기능을 배치합니다.
사용 가능한 플러그인의 현재 모음을 살펴보십시오.
Views 디렉토리에는 모든 레이아웃 파일을 넣습니다. 우리는 퍼그를 템플릿 프레임 워크로 사용합니다.
Markdown 파일의 내용 외에도 더 많은 데이터가 있습니다. config/app.yaml
파일의 모든 속성이 포함 된 하나의 app
객체가 있습니다. 다른 객체는 meta
객체입니다. app
모든 페이지에서 관련 또는 유용성이 포함 된 경우 meta
객체에는 페이지 자체에 대한 데이터 만 포함됩니다. 따라서 마크 다운 파일의 메타 섹션에서 정의하는 모든 속성과 값이 기본적으로 포함됩니다. 또한 포함됩니다
createdAt
Markdown 파일이 만들어 졌을 때 DateTime입니다
href
현재 HTML 파일의 경로입니다
dirname
현재 html 파일의 더 이름입니다
meta
객체는 물론 플러그인이 ID에 추가 한 내용에 따라 더 많은 데이터를 포함 할 수 있습니다.
전용 웹 페이지의 내용이 포함 된 각 Markdown 파일에는 헤드에 일부 설정이 필요합니다. 아래 예를 참조하십시오.
---
layout : pages/default.pug
title : Homepage
---
# Content
Content goes here...
물론 소위 메타 데이터를 추가 할 수 있습니다. 보기 파일에서
meta
개체로 사용할 수 있습니다.
또한 기본 구성 값은app
객체 내에서 사용할 수 있습니다.
다중 언어 웹 사이트에 NERA를 사용하려면 앱 구성 파일에 번역을 추가하여 PUG 템플릿에서 t
기능을 사용하여 쉽게 수행 할 수 있습니다.
config/app.yaml
...
translations :
en :
app_description : Nera is an easy to use and light weight static site generator
es :
app_description : Nera es un generador de sitios estáticos liviano y fácil de usar
views/layouts/layout.pug
. . .
head
. . .
meta ( name = "description" , content = ` ${ meta . description || t ( ' app_description ' ) } ` )
. . .
t
함수는 앱 구성 파일의 변환에서 키를 검색 하고이 키의 변환을 반환합니다. 번역 속성을 찾을 수 없거나 번역 내에 주어진 키가 없으면 함수는 키를 반환합니다.