Proton WebClients Applications
The Proton WebClients monorepo contains multiple React-based web applications that make up the Proton ecosystem. Each application is built using a shared component library and follows consistent architectural patterns.Proton Mail
Secure email application with end-to-end encryption
Proton Calendar
Encrypted calendar with event management and scheduling
Proton Drive
Secure cloud storage with file sharing and collaboration
Proton Pass
Password manager and credential vault
Proton VPN
VPN settings and configuration interface
Proton Wallet
Bitcoin wallet with privacy features
Architecture
All applications share a common architecture:Workspace Organization
Applications are located in
applications/ directory, each with its own package.json and source codeShared Packages
All apps use workspace packages like
@proton/components, @proton/shared, @proton/atoms, and @proton/stylesCommon Technologies
Core Stack
- React 18.3.1 - UI framework
- TypeScript 5.9.3 - Type safety
- React Router - Client-side routing
- Redux Toolkit - State management (most apps)
- ttag - Internationalization
Build & Development
Testing
All applications use:- Jest - Testing framework
- @testing-library/react - Component testing
- @testing-library/user-event - User interaction testing
Development Workflow
All applications support both standalone and SSO (single sign-on) modes for development and production.
Starting an Application
Building for Production
Running Tests
Shared Infrastructure
All applications leverage shared packages:| Package | Purpose |
|---|---|
@proton/components | UI components library |
@proton/shared | Shared utilities and constants |
@proton/atoms | Atomic design components |
@proton/styles | CSS styles and themes |
@proton/crypto | Cryptographic operations |
@proton/hooks | React hooks library |
@proton/icons | Icon components |
@proton/pack | Build and bundling tool |
Application Modes
Applications can run in different modes:- Standalone Mode - Independent application with its own authentication
- SSO Mode - Integrated with Proton account single sign-on
- Desktop Mode - Some apps have Electron desktop versions (Mail, Pass, Meet)