에어비엔비 창업자 브라이언 체스키가 창업 11주년을 기념해서 에어비엔비의 초기 때 웹사이트 모습을 트위터에 올렸습니다. 이를 본 누군가는 “최소기능제품(MVP, Minimal Viable Product)가 너무 훌륭하다는 건 출시가 늦었다는 뜻이다”라고 리트윗을 했어요. 추가적으로 트위터 초창기 사진도 올렸습니다.
사실 전에 말씀드린 1일 1식 라라벨용 웹사이트를 하루 날 잡아서 기획하고 설계해서 만들려고 했었는데요, 그냥 바로 시작해보기로 했습니다. 분명 나중에 바꾸느라 고생하겠지만 구독자 여러분들을 위해 선출시 후고민하는 걸로!
라라벨 제너레이터는 스캐폴딩(모델, 뷰, 레파지토리 등을 한 번에 만들어주는 것을 뜻함), API, 테스트, 스웨거 문서를 만들어주는 패키지입니다. 깃헙 스타수도 2000개 이상이고, 업데이트도 활발히 일어나며 처리된 이슈도 많아서 일전에 알아봤던 좋은 패키지의 기준에 맞는 것 같아요. 한 번 써보고 싶었는데 그동안 기회가 없었습니다. 기능이 많은 것 같으니 이번에 써보면서 조금씩 소개하도록 하겠습니다.
라라벨 제너레이터은 두가지 설치 방법이 있습니다. 하나는 아예 라라벨 제너레이터가 설치되고 세팅된 상태의 라라벨을 내려받는 것(보일러플레이트라고 표현하네요)과 이미 설치된 라라벨에 추가하는 것입니다. 저는 프로젝트를 생성하는 시점이니 첫번째 방법으로 진행하도록 하겠습니다.
보일러플레이트는 또 두 가지 선택지가 있습니다. 어떤 어드민 템플릿을 쓰느냐에 따라 달라지는 건데요, 하나는 AdminLTE라는 템플릿을 다른 하나는 CoreUI라는 템플릿을 쓰는 것입니다. 조금 찾아보니 CoreUI가 조금 더 쓰기 편하다는 일부의 의견이 있어서(AdminLTE가 훨씬 대중적인것 같아요) CoreUI를 써보도록 하겠습니다.
매뉴얼에는 깃헙 저장소를 클론한 후 컴포저 인스톨하라는 정도로 간단하게만 안내가 되어있습니다. 라라벨을 익숙하게 다루는 사람이 아니라면 오히려 여기서부터 당황하게 될 수 있겠네요. 깃헙 저장소 클론 후 웹사이트를 띄워서 브라우저로 확인하는 단계까지 진행해보겠습니다.
git clone git@github.com:InfyOmLabs/coreui-generator.git
컴포저와 npm 으로 의존 패키지를 설치합니다.
composer install
npm install
데이터베이스를 만듭니다.
루트 디렉터리에 있는 .env.example 파일을 복사해서 .env 파일을 만듭니다. 데이터베이스 항목을 사용할 데이터베이스에 맞게 수정합니다.
php artisan key:generate
php artisan migrate
이제 다 되었습니다. 아티즌 서버를 실행하고 브라우저로 확인해봅니다.
php artisan serv
짠!
회원가입과 로그인도 해봅니다.
잘 되네요!
내일은 라라벨 제너레이터의 기능을 이용해보도록 하겠습니다. 편하긴 편할지, 과연 얼마나 생산성 향상에 도움이 될지 기대가 되네요.
1일 1식 라라벨 32호
2019년 8월 13일
메쉬 코리아 개발자. 바쁜 팀장님 대신 알려주는 신입 PHP 개발자 안내서를 쓰고, 클린 아키텍처 인 PHP를 번역했습니다. 처음부터 제대로 배우는 라라벨(Laravel Up & Running 2nd Edition)을 번역했습니다.