Clean code.
2 files changed
tree: 779d050a68eadae11e909b59687a8b11b406fc65
  1. client/
  2. hupa/
  3. mock/
  4. server/
  5. shared/
  6. src/
  7. widgets/
  8. .gitignore
  9. pom.xml
  10. README.md
  11. update_doc.sh
README.md
Introduction

Hupa is a Rich IMAP-based Webmail application written in GWT.

Hupa has been entirely written in java to be coherent with the language used in the James project. It has been a development reference using GWT good practices (MVP pattern and Unit testing)

It is ready for reading, sending, and managing messages and folders, but it still lacks of many features email clients nowadays have.

Bulding

Hupa use maven2 as building tool. To build hupa download maven2 (http://maven.apache.org), unpack maven2 and install it. After that change to hupa directory and execute the following cmd: $ mvn clean package

Configuring server side

Hupa uses a properties file to know the IMAP and SMTP servers configuration. There is an example configuration file in ‘hupa/src/main/webapp/WEB-INF/conf/config.properties’

  • You can set your configuration parameters in either of these files: $HOME/.hupa/config.properties /etc/default/hupa
  • Or in any other file if you start your application server with the parameter: -Dhupa.config.file=full_path_to_your_properties_file
Running Hupa

Hupa comes packaged with a servlet-container, so once you have compiled the app just run: $ java -jar target/hupa-${version}.war

Then point your browser to the url: http://localhost:8282

If you prefer to use any other servlet container you can deploy the provided .war file in it.

Hupa and IMAP/SMTP servers

Hupa is able to discover most of the imap/smtp configuration based on the email domain part. When you are prompted to login, type your email address and wait few seconds, if you click on the gear button you can see the configuration discovered by Hupa, you can modify it if it does not match your email provider configuration. Then type your inbox password and you will be logged into your email provider servers.

Hupa is compatible with most email providers, gmail, yahoo, hotmail, outlook, exchange, james, etc.

Eclipse GWT Plugin notes
  • Hupa uses maven to be built, before inporting the project, you shoul install m2eclipse and google plugins, then go to Import -> New maven project and select the modules: shared, mock, server, widgets, client and hupa.

  • To run hupa in hosted mode, select: Run as -> (Google) Web application.