티스토리 뷰

요즘 Frontend는 Nodejs를 통해서 npm이라는 걸출한 솔루션을 통해 템플릿 엔진들을 손쉽게 적용하고 다운받아 정말 짧은 시간에 개발 환경을 만들어 사용할 수 있다. 그리고 이러한 템플릿 엔진들은 그 유명한 Angular, React, Vuejs 등을 기반으로 잘 구성 되어 있고, Backend 개발 또한 여러 프레임워크의 기반으로 템플릿 엔진들이 잘 구성되어 있어 손쉽게 개발 환경을 구축 할 수 있게 되었다.


이러다 보니 문제가 생기는데... 이제 이것 저것 많은 개발환경들이 내 Local에 설치되고 이제는 어떤 녀석이 어디에 있는지 찾는 것 조차 힘들게 되어버렸다. 또한, 개발을 하다보면 Backend와 Frontend는 구분해서 개발하다 보니, 둘다 켜야 하는데 CLI에서 둘을 잘 찾아 켜는 것도 많이 귀찮다.


이런 문제를 단순하게 해결해 주는 것은 없을까... 라는 생각이 들었었다.


이후 많은 시간이 흘러, Frontend 개발할때 훌륭한 mock api 기능을 준 json-server를 github에서 찾아 보다가, 동일 개발자인 typicode님이 만든 Hotel이라는게 눈에 띄였다. 이게 뭔가 하고 들어가 보니... 맙소사, 내가 원하는 것이었다.

일단 Hotel(이하 호텔)은 Web에서 이런 저런 Local에 있는 개발 환경들을 올려주고 출력되는 콘솔 정보까지 볼 수 있게 해주는 것 같다. 바로 빠르게 설치를 해 보왔다.


1
npm install -g hotel && hotel start
cs


설치는 npm으로 Global하게 설치되며, 명령어로 해당 기능을 실행한다.


시작하게 되면 단순하게 한줄로 Started <http://localhost:2000> 이라 출력되며 실행되어 있는 상태가 된다. 웹 브라우져를 열어서 해당 경로로 들어가 보면 호텔의 기능들을 볼 수 있다.

이제 내가 개발하고 있는 환경을 등록해 보려고 한다. 요즘 vue-element-ui로 만든 Admin 페이지 소스를 보고 있는데 이 프로젝트 위치로 들어가 아래와 같이 명령을 실행한다.


1
hotel add 'npm run dev'
cs


이렇게 등록하면 호텔 웹 화면에 등록이 되고, 스위처럼 켜고 끌 수 있게 된다. 이것만 해도 상당히 편해지는 기능이며, 이제 굳이 그 디렉토리로 들어가서 실행하거나 .bat 파일을 만들 필요는 없어졌다.


그리고, 실행 이후 해당 메뉴를 다시 클릭하면 출력되는 콘솔 내역도 확인할 수 있다.

아래는 호텔의 주요 실행 내용이며, github 페이지에서도 확인할 수 있다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
hotel add <cmd|url> [opts]
hotel run <cmd> [opts]
 
# Examples
 
hotel add 'nodemon app.js' --out dev.log  # Set output file (default: none)
hotel add 'nodemon app.js' --name name    # Set custom name (default: current dir name)
hotel add 'nodemon app.js' --port 3000    # Set a fixed port (default: random port)
hotel add 'nodemon app.js' --env PATH     # Store PATH environment variable in server config
hotel add <http://192.168.1.10> --name app  # map local domain to URL
 
hotel run 'nodemon app.js'                # Run server and get a temporary local domain
 
# Other commands
 
hotel ls     # List servers
hotel rm     # Remove server
hotel start  # Start hotel daemon
hotel stop   # Stop hotel daemon
cs


이제 콘솔 창을 여러개 띄어서 이런 저런 녀석들을 실행할 필요는 이제 없어졌다!


댓글
댓글쓰기 폼