---
# System prepended metadata

title: Dream Coding - React 3. Tools · Prerparation

---

# Dream Coding - React 3. Tools · Prerparation
## ==3.1 필요한 툴 설치==

## ==3.2 중요한 툴들 설명==

### Node.js

- JavaScript runtime enviornment (framework) that executes JavaScript code **outside a web browser
⇒ JavaScript everywhere**

### npm

- node package manager
- **Pubilish** and **share** course code of Node.js packages
- simplify installation, updating, and uninstallation of packages
- `package.json` 파일을 이용하여 npm을 이용하여 다운받은 해당 프로젝트의 library들을 관리

### npx

- tool for **executing packages**

### yarn

- package manager made by facebook
- built on top of npm to resolve some of npm's shortcomings (npm의 단점을 보완)
⇒ **faster, consistent, and secure**
- npm 과 호환이 가능함

## ==3.3 리액트 툴==

### create-react-app (cra)

- **hot module reloading** 지원 ( 코드의 변화를 감지하여 즉각적으로 재로딩 해주는 모듈)

```powershell
yarn create react-app my-app #my-app에는 앱 이름 적기
cd my-app
yarn start
```

### `yarn eject`

- 숨겨진 파일들을 다 공개하는 명령어 (되돌릴 수 없음)

## ==3.4 프로젝트 구조 설명==

### `manifest.json`

- pwa (progressive web app) 을 위해 필요한 파일
    - 즉, 모바일 어플리케이션을 만들때 필요한 파일

### `index.js`

- 최상단에 위치한 js파일

### `.gitgnore`

- 깃에 추가하기 싫은 내용 (`node_modules` , 캐쉬 파일, 개인 파일)

## ==3.6 숨겨진 툴 설명==


### Babel

- 어느 선까지 변환할지 설정할 수 있음
    - **convert** the latest ECMAScript ⇒ older version

### Webpack

- **Bundling** the code, JavaScript **module bundler**

### ESlint

- checking your code

### Jest

- delightful JavaScript testing framework

### PostCss

- expandable CSS libraries (CSS 전처리기)
- 많은 플러그인이 있어서, SCSS 에 비해서 훨씬 많은 일을 할 수 있음
- 현업에서 많이 사용