Skip to content

hamin/kyatchi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kyatchi

Kyatchi logo

Kyatchi (キャッチ catch) is a light NodeJS port of Mailcatcher. Kyatchi is written on top of the super simple Sinatra-like web framework for NodeJS, ExpressJS. The server and client-side javascript is all written in Coffeescript.

Like Mailcatcher Kyatchi runs a super simple SMTP server which catches any message sent to it to display in a web interface. Run Kyatchi, set your favorite app to deliver to smtp://127.0.0.1:1025 instead of your default SMTP server, then check out http://127.0.0.1:1080 to see the mail that's arrived so far.

Kyatchi also sends new messages to the web interface through WebSockets with failover support for ANY browser that doesn't support Websockets. This is done through the power of the awesome and simple pub/sub library Faye.

Features

  • Catches all mail and stores it for display.
  • Shows HTML, Plain Text and Source version of messages, as applicable.
  • Mail appears instantly on any browser.
  • Growl notifications for Mac OS X and Gnome notifications with Libnotify
  • Runs as a daemon run in the background.
  • Written super-simply in on top of ExpressJS via Coffeescript, very easy to change.

How

  1. npm install kyatchi
  2. npm start kyatchi
  3. Go to http://localhost:1080/
  4. Send mail through smtp://localhost:1025

The source is simple and available on GitHub.

Rails

To set up your rails app, I recommend adding this to your environment/development.rb:

config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = { :host => "localhost", :port => 1025 }

ANYTHING ELSE!

Doesn't matter what programming language/framework you're using. If it uses smtp to send messages, then Kyatchi will work for you!

Caveats

  • Email download needs work.

TODO

  • Fix Email download, currently line breaks aren't being persisted
  • Add support for Attachments
  • Add ability to specify smtp and web interface ports through command line interface

Thanks

I was surprised how quickly I was able to get Kyatchi up and running. We definitely have some very powerful tools at our fingertips right now. A big thanks to all of the authors/contributors of the whole stack used in Kyatchi. I would also like to thank the following people:

Donations

I started this project because I've been wanting to write something like this for a while, but I am doing this in my free time. If you are so inclined, buy me a cup of coffee, soda, or some nourishment by donating via Amazon Payments.

License

Copyright (c) 2011 Haris Amin (aminharis7@gmail.com). Released under the MIT License, see LICENSE for details.