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.jsonlists 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.phpentry 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/roundcubemailimage (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
Related Apps in apis-services
Mastodon
Decentralized, real‑time social networking
Discourse
Open‑source community forum platform with real‑time chat and AI
Rocket.Chat
Secure, open‑source team communication platform
Novu
Unified notification platform for multi‑channel delivery
Mattermost
Secure, self‑hosted team collaboration with chat, voice, and AI
Jitsi Meet
Free, encrypted video conferencing for everyone
Weekly Views
Repository Health
Information
Explore More Apps
Pomerium
Zero‑trust, clientless access to internal apps
Hasura GraphQL Engine
Instant, secure APIs from any database
Loomio
Collaborative decision-making for groups and organizations
Audiobookshelf
Self-hosted audiobook and podcast server
FusionPBX
Enterprise‑grade, multi‑tenant VoIP platform
SimpleLogin
Protect your identity with email aliases