npm init -y
로 npm 패키지 초기값으로 생성
// package.json 초기 설정
{
"name": "our42vent_test", // 패키지명
"version": "1.0.0", // 버전
"description": "", // 패키지 설명 입력
"main": "index.js", // 엔트리 포인트
"scripts": {
// key 로 value string 안의 명령 실행
"test": "echo \\"Error: no test specified\\" && exit 1"
},
"keywords": [], // npm search 로 검색 시 노출 키워드
"author": "", // 저자
"license": "ISC" // license
}
package.json
프로젝트 관련 내용들로 입력
{
"name": "our42vent_test",
"version": "1.0.0",
"description": "42 Seoul events calendar",
"main": "app.js",
"scripts": {
"test": "echo \\"Error: no test specified\\" && exit 1"
},
"keywords": [
"event",
"calendar",
"42 Seoul",
"community"
],
"author": "ghan",
"license": "MIT"
}
npm i express
로 express.js
설치
npm i <패키지명>
로 설치npm install <패키지명> -D
로 설치// package.json 하단에 dependency key: value pair 가 생성된다
"dependencies": {
// app 실행을 위해 필요한 dependency
"express": "^4.17.2"
},
"devDependencies": {
// 개발 환경에 필요한 dependency
"nodemon": "^2.0.15"
}
our42vent 는 express-generator
패키지 사용해 preset express.js 디렉토리 구조 사용.
npx express-generator --view=ejs
// command line flags
--version output the version number
-e, --ejs add ejs engine support
--pug add pug engine support
--hbs add handlebars engine support
-H, --hogan add hogan.js engine support
-v, --view <engine> add view <engine> support (dust|ejs|hbs|hjs|jade|pug|twig|vash) (defaults to jade)
--no-view use static html instead of view engine
-c, --css <engine> add stylesheet <engine> support (less|stylus|compass|sass) (defaults to plain css)
--git add .gitignore
-f, --force force on non-empty directory
-h, --help output usage information
위 명령어 실행하면 아래와 같은 디렉토리 구조 및 파일 생성
.
├── app.js
├── bin
│ └── www
├── package.json
├── public
│ ├── images
│ ├── javascripts
│ └── stylesheets
│ └── style.css
├── routes
│ ├── index.js
│ └── users.js
└── views
├── error.ejs
└── index.ejs
7 directories, 8 files