본문 바로가기

우분투

N1 - 오픈소스 메일 클라이언트

색다른 데스크탑 메일 클라이언트가 온다

메일은 단순한 기능임에도 불구하고 이미 다양한 데스크탑 메일 클라이언트가 개발되어 있습니다. 각자 메일을 사용하는 방식이 다르고 메일을 활용할 수 있는 범위가 확대되고 있기 때문에 지금도 메일 클라이언트들은 발전하고 있습니다. N1은 이러한 메일 클라이언트 경향을 잘 반영한 메일 클라이언트라고 볼 수 있습니다. 외형은 미려한 디자인으로 Airmail이나 Unibox와 크게 다를게 없어 보입니다. 하지만 N1은 독특한점을 가지고 있습니다.

  • N1은 오픈소스 프로젝트입니다. Github 저장소
  • N1은 크로스플랫폼 어플리케이션입니다. (Windows, Linux, Mac 지원)
  • N1은 플러그인 시스템을 지원합니다. 플러그인 목록


일단 설치해보자

얼마전까지만 해도 N1에서 초대장은 받아야 설치할 수 있었는데, 지금은 누구나 N1 홈페이지에 들어가면 받을 수 있게되었습니다. 먼저 N1 홈페이지에 들어가서 각자 운영체제에 맞는 설치프로그램을 받아 설치합시다. 실행하면 처음에 다음과 같은 화면이 뜹니다.

사용자를 환영하는 첫 페이지로군요. Continue를 눌러서 다음으로 넘어가도록 합시다. 그러면 메일을 선택하는 화면이 나옵니다.

저는 Gmail을 사용하니 Gmail을 선택하도록 하겠습니다. 목록에 없는 이메일을 사용하시면 아래 IMAP 설정을 이용하면 IMAP을 지원하는 이메일들도 등록할 수 있습니다. 메일을 등록했다면 layout를 고를 수 있습니다.

저는 Two Panel을 선택해보겠습니다. 이제 N1이 실행됩니다. N1은 다음과 같이 생겼습니다.

깔끔한 UI를 가지고 있습니다. 그런데 mac에 최적화된 UI를 가지고 있어서 window나 리눅스에서 볼때는 뭔가 위화감이듭니다. 하지만 N1은 테마 시스템을 가지고 있어서 좀 기다리면 각각의 운영체제에 맞는 테마를 만들어 질것 같습니다. 메일을 쓰는 화면도 깔끔하게 되어있습니다.

텍스트를 선택하면 볼드체/이탤릭체를 선택할 수 있습니다.

N1에서 가장 중요하게 내세우는 점은 플러그인 시스템입니다. 왼쪽에 plugins라는 메뉴에 들어가보면 설치된 plugin들을 볼 수 있습니다. 현재는 초기라서 개발된 plugin들이 별로 없지만 나중에는 많은 plugin들이 개발될것 같습니다.

사람마다 메일에서 원하는 기능이 다르기 때문에 원하는 plugin을 설치해서 사용하면 좋을것 같습니다.


클라이언트 내부는 어떻게 만들어졌나?

개발에 관심이 없는 분이라면 이 파트는 뛰어 넘으셔도 됩니다.

어플리케이션 개발자라면 일반적으로 갖는 호기심이 "어떤 라이브러리와 어떤 언어를 써서 구현되었는가" 입니다. N1은 Node.js을 기반으로 Atom 에디터를 만들때 개발된 Electron 라이브러리를 사용합니다. 이 라이브러리는 node-webkit의 발전형으로 node 엔진위에 webkit을 이용하여 UI를 만들 수 있는 라이브러리입니다. 언어는 javascript의 변형인 coffeescript를 사용합니다. Coffeescript는 javascript의 몇가지 문제점들을 해결하기 위해 개발된 언어로 javascript에 비해 깔끔한 코드를 작성할 수 있습니다. 또한 기존 javascript 라이브러리를 그대로 이용할 수 있습니다. 여기에 페이스북에서 공개한 ReactFlux 라이브러리를 사용하고 있습니다. 정리해 보면 N1을 개발하는데 사용된 코어 라이브러리들은 다음과 같습니다.

  • Node.js
  • Coffeescript
  • Electron
  • React
  • Flux

마치면서

사실 아직은 N1이 다른 메일 클라이언트에 비해 좋은점이 별로 없습니다. 그리고 아직 초기단계라 클라이언트가 불안정합니다. 끊길때도 있고 튕길때도 있습니다. 하지만 오픈소스 프로젝트이기도 하고 강력한 플러그인 시스템을 가지고 있으니 시간이 좀 지나면 괜찮은 프로젝트로 발전하지 않을까 합니다.