# Dual License

This software is available under two licenses. Choose the one that best fits your use case.

---

## 1. GNU Affero General Public License v3.0 (AGPL-3.0)

**For open-source and non-commercial use.**

Copyright (C) 2025 infra-screenshot contributors

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see <https://www.gnu.org/licenses/agpl-3.0.html>.

### Key Requirements of AGPL-3.0

**Network Use Obligation**: If you run this software as a network service (e.g., SaaS, API, web application), you MUST:
- Make your complete source code available to users of that service
- License your source code under AGPL-3.0
- Include installation instructions and build scripts

**Copyleft**: Any modifications or derivative works must also be licensed under AGPL-3.0.

**Attribution**: You must preserve all copyright notices and license information.

### Full License Text

The complete AGPL-3.0 license text is available at:
https://www.gnu.org/licenses/agpl-3.0.html

---

## 2. Commercial License

**For commercial use without AGPL obligations.**

If you want to use this software in a commercial product or service without complying with AGPL-3.0 requirements, you must obtain a commercial license.

### Commercial License Benefits

- ✅ **No source code disclosure** - Keep your code proprietary
- ✅ **No copyleft requirements** - Embed in closed-source products
- ✅ **SaaS without restrictions** - Run as a service without sharing source
- ✅ **Technical support** - Priority support and maintenance
- ✅ **Legal protection** - Indemnification and warranties

### When You Need a Commercial License

You need a commercial license if you:
- Run this software as a SaaS/API/cloud service without open-sourcing your code
- Embed this software in a proprietary application
- Use this software in a commercial product that you sell or distribute
- Cannot or do not want to comply with AGPL-3.0 requirements

### Contact

For commercial licensing inquiries, pricing, and terms:
- **Website**: https://github.com/pj-ms/infra-screenshot

---

## Third-Party Dependencies

This software depends on the following open-source libraries with permissive licenses:

- **Playwright** (Apache-2.0) - https://github.com/microsoft/playwright-python
- **Selenium** (Apache-2.0) - https://github.com/SeleniumHQ/selenium
- **pytest** (MIT) - https://github.com/pytest-dev/pytest
- **numpy** (BSD-3-Clause) - https://github.com/numpy/numpy
- **Pillow** (HPND) - https://github.com/python-pillow/Pillow
- **PyYAML** (MIT) - https://github.com/yaml/pyyaml

All dependencies are compatible with AGPL-3.0 licensing. See their respective LICENSE files for details.

---

## Disclaimer

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
