Envelope is a web-based email management solution built with Ruby on Rails. We are currently in the process of moving to a JS Framework (Spine). Envelope began as a CMU Information Systems project by Dom Cerminara, Elizabeth Li, Seth Vargo, and Xun Wang.
-
Clone the project
git clone [email protected]:envelopeapp/envelope.git && cd envelope
-
Run
script/mac
:./script/mac
I highly encourage you to look at the script for you personal sanity. In short, it:
-
Install homebrew
-
Install elasticsearch
-
Install mongodb
-
Bundle the gems
-
(optional) Seed the database
GMAIL_USERNAME=[YOUR GMAIL USERNAME] GMAIL_PASSWORD=[YOUR GMAIL PASSWORD] bundle exec rake db:seed
-
Fire up the application
bundle exec foreman start
Envelope is packaged with vagrant and is available for download. It is currently an ubuntu precise64 box packaged with all the necessary dependencies already installed.
-
Install vagrant
-
Clone the project
git clone [email protected]:envelopeapp/envelope.git && cd envelope
-
Install the envelope base box:
vagrant box add envelope http://github.com/downloads/envelopeapp/envelope/base.box
-
Initialize the box:
vagrant init envelope
-
Boot up the VM
vagrant up
-
You should now be able to ssh into the Ubuntu box:
vagrant ssh
-
Change into the
/vagrant
bootstrap the application./script/ubuntu
-
(optional) Seed the database
GMAIL_USERNAME=[YOUR GMAIL USERNAME] GMAIL_PASSWORD=[YOUR GMAIL PASSWORD] bundle exec rake db:seed
-
Fire up the application
bundle exec foreman start
Note It is highly recommended that you adjust the VirutalBox settings and give the box at least 2GB of RAM!
Envelope has 4 major components:
- Web Server (puma)
- Notifications (pusher)
- Search Engine (elasticsearch)
- Background Processing (sidekiq)
For more information, such as Installation or Scaling, please see the Wiki.