stephenreid321 / lumen

Open-source group discussion platform. Written in Ruby (Padrino), hosted via DigitalOcean/dokku. No longer in active development
GNU General Public License v3.0
52 stars 10 forks source link

Lumen

Build Status

Lumen is an open-source group discussion platform with dual web-email access. It can be compared to Discourse, Loomio, Slack, Google Groups or Facebook Groups. An outline of its features:

Lumen is written in Ruby using the Padrino framework. It was originally created for the New Economy Organisers Network (hosted by the New Economics Foundation) who kindly agreed to open source the project and continue to sponsor its development.

 How the mailing lists work, in brief

  1. Your mail server receives a mail to yourgroup@yourdomain.org
  2. The mail triggers a simple notification script on the mail server that in turn alerts your web app to the fact there's a new message for the group
  3. Your web app connects to the mail server via IMAP to fetch the new mail
  4. Your web app distributes the message to group members via SMTP

Installation instructions

Switching mail servers

If you switch your mail server, you'll need to re-setup the group mail accounts on the new server. Fire up a console (padrino c) and run:

Group.each { |group| group.setup_mail_accounts_and_forwarder }
ConversationPost.update_all(imap_uid: nil)