explaingit

roundcube/roundcubemail

6,967PHPAudience · ops devopsComplexity · 4/5LicenseSetup · hard

TLDR

Roundcube is a free open-source webmail application you install on your own server so people can read and send email through a browser, without needing a desktop email program, supporting IMAP, plugins, and custom skins.

Mindmap

mindmap
  root((repo))
    What it does
      Browser-based email
      IMAP connection
      Folder management
      Address book
    Tech Stack
      PHP backend
      JavaScript frontend
      MySQL PostgreSQL SQLite
    Extensibility
      Plugin system
      Custom skins
    Audience
      Server admins
      Organizations
      Self-hosters
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Set up a self-hosted webmail interface so employees can access company email from any browser without a desktop client.

USE CASE 2

Add a custom plugin to extend Roundcube with new features like calendar integration or two-factor authentication.

USE CASE 3

Deploy a multilingual email client for international users by selecting the appropriate language pack.

USE CASE 4

Replace a paid hosted webmail service with a self-hosted open-source alternative you fully control.

Tech stack

PHPJavaScriptMySQLPostgreSQLSQLite

Getting it running

Difficulty · hard Time to first run · 1h+

Requires a running web server (Apache or Nginx), PHP, a database (MySQL or PostgreSQL), and an existing IMAP email server to connect to.

Free to use, modify, and distribute, but any modified version you release must also be open source under the same GPL v3 license, plugins and skins have a more relaxed licensing exception.

In plain English

Roundcube is a free, open-source webmail application. It is the kind of software you install on a web server so that people can check and send email through a browser, without needing a separate desktop email program. It connects to email accounts using IMAP, which is the standard protocol that email servers use to let you read messages remotely. The interface is designed to feel more like a desktop application than a typical web page. It includes the features you would expect from a full email client: reading and composing messages, support for attachments, an address book, folder management, message search, and spell checking. The application is also multilingual, meaning the interface can be displayed in many languages. Roundcube is written in PHP and runs on a web server. It requires a database to store things like address books, preferences, and session data, it supports MySQL, MariaDB, PostgreSQL, and SQLite. The frontend is built with PHP and JavaScript. The project has a plugin system that allows developers to add new features without modifying the core code. The visual appearance can be changed using custom skins. Both plugins and skins have a licensing exception that lets them be developed and distributed more freely than the core code, which is released under the GNU General Public License version 3. This repository is the development snapshot, meaning it reflects the current state of the codebase and may not be stable. People running Roundcube on a live server are advised to use official stable releases rather than cloning from this repository directly. It is maintained by a team of volunteers and is one of the more widely used self-hosted webmail solutions available.

Copy-paste prompts

Prompt 1
Help me install Roundcube on my Ubuntu server with Apache, PHP 8, and MySQL, including the database setup and config file.
Prompt 2
I want to create a Roundcube plugin that adds a sidebar widget showing the user's unread count. Walk me through the plugin skeleton and key API hooks.
Prompt 3
How do I configure Roundcube to connect to my existing IMAP server and set the correct host, port, and encryption settings?
Prompt 4
Walk me through upgrading Roundcube from version 1.5 to the latest stable release without losing user address books or settings.
Prompt 5
I want to apply a custom skin to my Roundcube installation to match my company branding. How does the skin system work?
Open on GitHub → Explain another repo

← roundcube on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.