License

Cypht source code is distributed under the LGPL V2.1 license. Cypht will always be both free and Open Source. Learn about our licensing terms and the third-party libraries we use.
LGPL V2.1 License

Cypht is licensed under the GNU Lesser General Public License v2.1

The GNU Lesser General Public License is a free software license that allows you to use, modify, and distribute Cypht under certain conditions.
What You Can Do
  • Use Cypht for commercial purposes
  • Modify the source code
  • Distribute modified versions
  • Use it in proprietary applications
  • Charge for distribution and support
Requirements
  • Provide access to source code
  • Include license notices
  • State changes made to the code
  • Allow users to reverse engineer
  • Keep modifications under LGPL
Why LGPL?

We chose LGPL v2.1 because it balances freedom for users with flexibility for developers. You can use Cypht in commercial projects while ensuring the core remains open source.

Cypht uses a handful of third party libraries both indirectly and directly. Compatible versions of direct dependencies are always included in the Cypht source or installed via PHP composer.

These libraries are directly integrated into Cypht and are essential for core functionality:

HTMLPurifier

A comprehensive HTML filter written in PHP that removes malicious code while preserving valid markup. Essential for email security.

Visit Website
Cash

A compact jQuery compatible JavaScript library that provides core DOM manipulation and event handling features.

Documentation
Html2Text

HTML to text converter in PHP that extracts textual content from HTML emails for better compatibility and readability.

GitHub
KindEditor

Lightweight JavaScript WYSIWYG editor for composing HTML messages with built-in rich text editing features.

View Demo
Forge

JavaScript cryptography library providing secure encryption, digital signatures, and key generation capabilities.

GitHub
Random Compat

Cryptographically secure random number generator library for PHP, ensuring the safety of sensitive operations.

GitHub
Base32

Base32 encoding library used by the two-factor authentication (2FA) module to generate secure QR codes.

GitHub
Barcode

PNG QR code generator for PHP, used by the 2FA module to create secure visual authentication codes.

GitHub
Libsodium

Optional NIST-compliant cryptography library offering modern, secure encryption algorithms for sensitive operations.

Documentation
Push

JavaScript library for easy desktop notifications, used by the desktop notification module to alert users about new emails.

Website
Editor

JavaScript Markdown editor for composing messages with a modern UI and advanced editing features.

Website
Parsedown

PHP library to convert Markdown to HTML, enabling message and documentation formatting with simple, readable syntax.

Website

These libraries are used during development and testing but are not required for running Cypht:

PHPUnit

Program that runs unit tests and builds coverage reports for PHP

Website
ApiGen

PHP app to generate documentation from source code

Website
Selenium

Automated browser testing framework

Website
Understanding your obligations when using and distributing Cypht.

When distributing Cypht or modified versions, you must:

Compliance Checklist
  • ✅ Include a copy of the LGPL v2.1 license
  • ✅ Provide copyright notices for all components
  • ✅ Make source code available to recipients
  • ✅ Allow users to modify and redistribute
  • ✅ Keep modifications under LGPL license
  • ✅ Document changes made to the original code

Yes, you can use Cypht in commercial applications! The LGPL allows commercial use as long as you comply with the license terms. You can:

Allowed
  • Sell commercial products using Cypht
  • Use in proprietary software
  • Charge for support and services
  • Create custom modules
Requirements
  • Provide source for Cypht components
  • Allow users to replace Cypht parts
  • Include license notices
  • Document modifications
More information about open source licensing and Cypht.