Sails'js 소개 및 시작하기

최근에 간단한 앱 API서버 프로토타입을 만들 일이 생겨서 검색으로 조사해봤다. 일단 일의 메인 프로젝트가 자바기반이긴 하지만 프로토타입을 만드는 서브 프로젝트라서 자바는 배제를 시켰고 최근에 관심을(아니 관심만) 가지고 있는 node.js기반의 프레임워크를 찾다가 관심을 가지게 된 프레임워크다. 현재 버전은 0.11.0이고 구글링 한국어로는 페이지가 몇 안 나오는 걸로 보아 인기가 얻거나 나온지 얼마 안됬구나 했는데 Git 히스토리를 보니 대략 2012년부터 해온 프로젝트다.

Mike Mcneil(https://www.linkedin.com/in/mikermcneil) 이라는 친구가 처음 만들어서 오픈소스로 올렸고 처음에는 rails like한 node’js 프레임워크를 만들려고 했던 것으로 보인다. 그래서 이름 역시 (ruby on) rails와 유사한 sails(‘js)이다. 이 친구가 sails’js기반으로 테크 스타트업회사인 treeline(https://treeline.io/) 을 하고 있다. treeline에 올라온 영상을 보면 알겠지만 코딩 없이 앱이나 모바일/웹 서비스의 백엔드를 만들어주는 서비스로 보인다. 개인적으로 sails’js에 관심을 가지는 이유는 사물인터넷의 백엔드 프레임워크로 괜찮다(아직까진)라는 느낌을 받아서인데 확신은 없지만 괜찮은 선택으로 보인다.

sails’js 관련 글을 몇 개 더 올릴 생각인데, 먼저 나 스스로가 node’js를 실제 업무에서 사용하는 개발자가 아님을 염두에 두길 바란다. 잘못된 부분있으면 댓글을 달아주시고 댓글을 확인하면 아무도 모르게 슬쩍 고쳐놓겠다. 그리고 가장 중요한 점은 나 스스토로 공부하기(삽질하기 위해서) 위해서 정리 겸 해서 올리는 포스팅이다. 결국엔 나도 잘 모른다는 이야기다. ;Q

Sails’js?

Sails'js

당근 자바스크립트 언어 구성이고, 내부적으로 Waterline이라는 ORM 플러그인을 내장하고 있어서 기존 Mysql과 같은 SQL기반 데이터베이스뿐만 아니라 MongoDB같은 noSQL 데이터베이스도 사용이 가능하고 모델을 통한 쿼리도 가능하다. 모바일 앱이나 게임에서 필요한 REST API 바로 생성할 수 있는 기능은 프로토타입핑하기엔 편리하다. 웹소켓 기능도 기본으로 들어가 있는데 아직까진 사용해본 적이 없어서 모르겠고 위 2가지 사항만으로도 충분한 강점이 있어 보인다.

설치는 npm으로 간편 설치.

npm -g install sails

npm을 사용하기 이전에 시스템에 node가 설치되어 있어야 한다.

다음 포스트에서 간단하게 로그인 기능을 구현하는 방법을 올려 보겠다.

sails’s 관련 링크