MCPSERV.CLUB
Roundcube

Roundcube

Self-Hosted

Webmail client for modern browsers

Active(100)
6.6kstars
0views
Updated 5 days ago

Overview

Discover what makes Roundcube powerful

Roundcube is a full‑featured, browser‑based IMAP client written primarily in PHP with an accompanying JavaScript UI layer. It delivers a desktop‑like email experience over the web, supporting MIME/HTML messages, spell checking, PGP encryption, and a rich address book that can integrate with LDAP. The application is designed to be modular: its core framework exposes a plugin API, a skin system for UI theming, and hooks that allow developers to extend or replace functionality without touching the core code. From a technical standpoint, Roundcube acts as an IMAP proxy: it authenticates users against the web server’s credentials, connects to a remote IMAP/SMTP server, and translates standard email operations into HTTP requests.

Backend

Database

Frontend

Packaging

Overview

Roundcube is a full‑featured, browser‑based IMAP client written primarily in PHP with an accompanying JavaScript UI layer. It delivers a desktop‑like email experience over the web, supporting MIME/HTML messages, spell checking, PGP encryption, and a rich address book that can integrate with LDAP. The application is designed to be modular: its core framework exposes a plugin API, a skin system for UI theming, and hooks that allow developers to extend or replace functionality without touching the core code. From a technical standpoint, Roundcube acts as an IMAP proxy: it authenticates users against the web server’s credentials, connects to a remote IMAP/SMTP server, and translates standard email operations into HTTP requests.

Architecture & Technical Stack

  • Backend: PHP 7.4+ (or newer) with a lightweight custom MVC‑style framework. The core relies on an IMAP library derived from IlohaMail, which handles low‑level mailbox interactions and supports ACLs, shared folders, and caching.
  • Database: Supports MariaDB/MySQL, PostgreSQL, or SQLite for storing configuration, user preferences, address books, and session data. The schema is deliberately simple to aid migration and backup.
  • Frontend: jQuery 3.x, Backbone‑like models, and a responsive skin system. The UI is built with standard HTML5/CSS3, enabling rapid theming and accessibility compliance.
  • Packaging: Composer is used for PHP dependencies, while jsdeps.json lists JavaScript libraries. This modular dependency management facilitates CI pipelines and automated testing.

Core Capabilities & APIs

  • Plugin API: Events (beforeLogin, afterLogout, messageSend), command hooks, and a plugin manager that allows loading, enabling, or disabling extensions at runtime.
  • Web API: A JSON‑based REST interface (via the api.php entry point) that can be consumed by custom frontends or mobile apps.
  • SMTP/IMAP Integration: Full support for SMTPUTF8, IDNA, and ACLs. Plugins can override the IMAP backend or inject additional authentication mechanisms (e.g., OAuth2).
  • Address Book: LDAP connector, group management, and vCard import/export.

Deployment & Infrastructure

Roundcube is a stateless PHP application, making it ideal for containerization. A typical Docker setup includes:

  • roundcube/roundcubemail image (PHP + Apache/Nginx)
  • Separate database container (MySQL/PostgreSQL)
  • Optional Redis/Memcached for session storage and mailbox caching

Horizontal scaling is straightforward: multiple web instances behind a load balancer share the same database and session store. The caching layer dramatically reduces IMAP round‑trips, improving performance under high load.

Integration & Extensibility

  • Plugins: Thousands of community plugins exist (e.g., auth/oauth, mail/pgp, filter/mark). Developers can ship plugins as Composer packages, enabling versioned distribution.
  • Webhooks: Plugins may expose HTTP endpoints for external services (e.g., webhook on message send).
  • Custom Skins: Full CSS/HTML overrides allow developers to create branded interfaces without touching core logic.
  • API Hooks: Advanced plugins can tap into the IMAP library to implement custom folder hierarchies or message filtering.

Developer Experience

Roundcube’s documentation is extensive: a quick‑start guide, a developer manual, and an API reference. The codebase follows PSR standards, easing contribution. The community is active on GitHub; pull requests are merged promptly, and the issue tracker provides clear guidance for new contributors. Licensing is GPLv3 with an exception that allows plugins and skins to be distributed under different terms, which encourages ecosystem growth.

Use Cases

  • Enterprise Webmail: Deploy a self‑hosted web client that integrates with existing IMAP servers, providing a unified UI for corporate users.
  • Custom Email Platforms: Build a branded email service (e.g., for SaaS providers) by extending Roundcube with OAuth2, SSO, or custom address book connectors.
  • Educational Institutions: Offer students a webmail interface that supports LDAP integration and group mailboxes, all while keeping the infrastructure on campus.
  • Developer Portals: Use Roundcube’s API to create lightweight mail clients within internal dashboards or mobile applications.

Advantages

  • Performance: Built‑in caching and efficient IMAP handling make it competitive with commercial webmail solutions.
  • Flexibility: The plugin system and open API allow developers to tailor every aspect of the user experience.
  • Licensing: GPLv3 with plugin exceptions gives freedom to commercialize extensions without license conflicts.
  • Community & Support: A mature ecosystem, active contributors, and comprehensive documentation reduce onboarding time.

Overall, Roundcube offers a robust, extensible foundation for developers who need a self‑hosted webmail solution that can be adapted to diverse environments while maintaining high performance and security standards.

Open SourceReady to get started?

Join the community and start self-hosting Roundcube today

Weekly Views

Loading...
Support Us
Most Popular

Infrastructure Supporter

$5/month

Keep our servers running and help us maintain the best directory for developers

Repository Health

Loading health data...

Information

Category
apis-services
License
GPL-3.0
Stars
6.6k
Technical Specs
Pricing
Open Source
Database
Multiple
Supported OS
Linux
Author
roundcube
roundcube
Last Updated
5 days ago