Implement dual-license system (AGPL v3 + Commercial)
- Add AGPL v3 license with commercial addendum (LICENSE) - Add comprehensive license documentation (LICENSE-INFO.md) - Add contribution guidelines with notification requirements (CONTRIBUTING.md) - Update version.php with dual-license information Dual-license model: - AGPL v3 for open-source use (free, must share modifications) - Commercial license for proprietary use (paid, €99-€2499) - Donation tiers for supporters (€25-€1000+) Requirements for users: - Must notify author of modifications (via GitLab/email) - Must create CHANGES.md documenting modifications - Must share source code (AGPL v3) OR purchase commercial license - Must maintain attribution to original author Commercial licensing: - Individual: €99 (1 developer) - Business: €499 (10 developers) - Enterprise: €2499 (unlimited) - SaaS: €999/year Contact: commercial@noorlander.info This licensing structure protects intellectual property while supporting the open-source community and enabling commercial revenue.
This commit is contained in:
parent
fcedacee5f
commit
d0bfeed9ab
238
CONTRIBUTING.md
Normal file
238
CONTRIBUTING.md
Normal file
@ -0,0 +1,238 @@
|
||||
# CONTRIBUTING.md
|
||||
|
||||
## 🤝 Contributing to CodePress CMS
|
||||
|
||||
Thank you for your interest in contributing to CodePress CMS!
|
||||
|
||||
## 📜 License Agreement
|
||||
|
||||
By contributing to CodePress CMS, you agree that:
|
||||
|
||||
1. Your contributions will be licensed under **AGPL v3**
|
||||
2. You retain copyright to your contributions
|
||||
3. You grant the project maintainer (E.Noorlander) the right to dual-license your contributions
|
||||
4. You have the right to submit the contribution
|
||||
|
||||
## 📢 Notification Requirement
|
||||
|
||||
When contributing or modifying CodePress CMS:
|
||||
|
||||
### Required Steps:
|
||||
|
||||
1. **Fork the repository**
|
||||
```bash
|
||||
git clone https://git.noorlander.info/E.Noorlander/CodePress.git
|
||||
```
|
||||
|
||||
2. **Create a CHANGES.md** in your fork:
|
||||
```markdown
|
||||
# Changes to CodePress CMS
|
||||
|
||||
## Modified by: [Your Name]
|
||||
## Date: [Date]
|
||||
## Original: https://git.noorlander.info/E.Noorlander/CodePress.git
|
||||
|
||||
### Changes:
|
||||
- [List your changes]
|
||||
|
||||
### Attribution:
|
||||
Based on CodePress CMS by E.Noorlander
|
||||
Licensed under AGPL v3
|
||||
```
|
||||
|
||||
3. **Create an issue** before major changes:
|
||||
- Describe the change you want to make
|
||||
- Get feedback from maintainers
|
||||
- Discuss implementation approach
|
||||
|
||||
4. **Submit a pull request**:
|
||||
- Reference the issue number
|
||||
- Include tests if applicable
|
||||
- Update documentation
|
||||
- Follow coding standards (PSR-12)
|
||||
|
||||
5. **Notify the maintainer**:
|
||||
- Email: commercial@noorlander.info
|
||||
- GitLab issue: https://git.noorlander.info/E.Noorlander/CodePress.git/issues
|
||||
- Pull request notification is automatic
|
||||
|
||||
## 🎯 What We're Looking For
|
||||
|
||||
### High Priority
|
||||
- 🐛 Bug fixes
|
||||
- 🔒 Security improvements
|
||||
- 📝 Documentation improvements
|
||||
- 🧪 Test coverage
|
||||
- ♿ Accessibility improvements
|
||||
|
||||
### Medium Priority
|
||||
- ✨ New features (discuss first!)
|
||||
- 🎨 UI/UX improvements
|
||||
- ⚡ Performance optimizations
|
||||
- 🌍 Translation additions
|
||||
|
||||
### Low Priority
|
||||
- 🎨 Code refactoring
|
||||
- 📦 Dependency updates
|
||||
|
||||
## 📋 Contribution Guidelines
|
||||
|
||||
### Code Style
|
||||
- Follow PSR-12 coding standard
|
||||
- Use 4 spaces for indentation
|
||||
- Add PHPDoc comments to functions
|
||||
- Keep functions small and focused
|
||||
|
||||
### Commit Messages
|
||||
```
|
||||
Type: Short description (max 50 chars)
|
||||
|
||||
Longer description if needed (max 72 chars per line)
|
||||
|
||||
Fixes #issue-number
|
||||
```
|
||||
|
||||
**Types:**
|
||||
- `feat:` New feature
|
||||
- `fix:` Bug fix
|
||||
- `docs:` Documentation
|
||||
- `test:` Tests
|
||||
- `refactor:` Code refactoring
|
||||
- `perf:` Performance improvement
|
||||
- `security:` Security fix
|
||||
|
||||
### Testing
|
||||
- Add tests for new features
|
||||
- Ensure all tests pass
|
||||
- Run security tests (pentest.sh)
|
||||
- Test in multiple browsers
|
||||
|
||||
### Documentation
|
||||
- Update README if needed
|
||||
- Update function-test docs
|
||||
- Add inline comments
|
||||
- Update CHANGELOG
|
||||
|
||||
## 🚫 What We Won't Accept
|
||||
|
||||
- ❌ Code that breaks existing functionality
|
||||
- ❌ Contributions without proper attribution
|
||||
- ❌ Code that violates AGPL v3
|
||||
- ❌ Malicious or obfuscated code
|
||||
- ❌ Contributions that violate copyright
|
||||
- ❌ PRs without notification/communication
|
||||
|
||||
## 💰 Commercial Contributions
|
||||
|
||||
If you're contributing on behalf of a commercial entity:
|
||||
|
||||
1. **Company must have a commercial license** OR
|
||||
2. **Release contributions as open-source** (AGPL v3)
|
||||
|
||||
Contact commercial@noorlander.info for licensing.
|
||||
|
||||
## 🎁 Recognition
|
||||
|
||||
Contributors will be:
|
||||
- Listed in CONTRIBUTORS.md
|
||||
- Credited in release notes
|
||||
- Mentioned on project website (if applicable)
|
||||
- Given contributor badge
|
||||
|
||||
## 📞 Getting Help
|
||||
|
||||
- **Questions:** Create a GitLab issue
|
||||
- **Bugs:** Create a GitLab issue with reproduction steps
|
||||
- **Features:** Discuss in GitLab issues first
|
||||
- **Commercial:** Email commercial@noorlander.info
|
||||
|
||||
## 🔄 Development Workflow
|
||||
|
||||
1. **Fork** the repository
|
||||
2. **Create branch** from `development`
|
||||
```bash
|
||||
git checkout -b feature/your-feature development
|
||||
```
|
||||
3. **Make changes** and commit
|
||||
4. **Push** to your fork
|
||||
5. **Create Pull Request** to `development` branch
|
||||
6. **Wait for review** (usually within 48 hours)
|
||||
7. **Address feedback** if requested
|
||||
8. **Merge** once approved
|
||||
|
||||
## ✅ Pull Request Checklist
|
||||
|
||||
Before submitting:
|
||||
|
||||
- [ ] Code follows PSR-12 style
|
||||
- [ ] All tests pass
|
||||
- [ ] Documentation updated
|
||||
- [ ] CHANGES.md created/updated
|
||||
- [ ] Commit messages follow convention
|
||||
- [ ] Issue created and linked
|
||||
- [ ] Maintainer notified
|
||||
- [ ] No breaking changes (or clearly documented)
|
||||
- [ ] Security implications considered
|
||||
- [ ] Performance impact tested
|
||||
|
||||
## 🏆 Top Contributors
|
||||
|
||||
Recognition for significant contributors:
|
||||
- 🥇 **Gold Contributor** (10+ merged PRs)
|
||||
- 🥈 **Silver Contributor** (5+ merged PRs)
|
||||
- 🥉 **Bronze Contributor** (1+ merged PR)
|
||||
|
||||
## 📄 Code of Conduct
|
||||
|
||||
### Be Respectful
|
||||
- Respect all contributors
|
||||
- Constructive criticism only
|
||||
- No harassment or discrimination
|
||||
- Professional communication
|
||||
|
||||
### Be Collaborative
|
||||
- Help others learn
|
||||
- Share knowledge
|
||||
- Review PRs constructively
|
||||
- Welcome newcomers
|
||||
|
||||
### Be Responsible
|
||||
- Test your code
|
||||
- Follow license terms
|
||||
- Respect copyrights
|
||||
- Report security issues privately
|
||||
|
||||
## 🔐 Security Issues
|
||||
|
||||
**DO NOT** create public issues for security vulnerabilities!
|
||||
|
||||
Report privately:
|
||||
- Email: security@noorlander.info
|
||||
- Expected response: 24 hours
|
||||
- Coordinated disclosure process
|
||||
|
||||
## 📊 Contribution Statistics
|
||||
|
||||
We track:
|
||||
- Lines of code contributed
|
||||
- Number of commits
|
||||
- Issues resolved
|
||||
- PRs merged
|
||||
- Test coverage improvements
|
||||
|
||||
## 🎓 Learning Resources
|
||||
|
||||
- [PSR-12 Coding Standard](https://www.php-fig.org/psr/psr-12/)
|
||||
- [AGPL v3 License](https://www.gnu.org/licenses/agpl-3.0.html)
|
||||
- [Git Workflow](https://git-scm.com/book/en/v2/Git-Branching-Branching-Workflows)
|
||||
|
||||
## 🙏 Thank You!
|
||||
|
||||
Your contributions make CodePress CMS better for everyone. We appreciate your time and effort!
|
||||
|
||||
---
|
||||
|
||||
**Questions?** Contact: commercial@noorlander.info
|
||||
|
||||
**License:** AGPL v3 / Commercial Dual License
|
||||
**Copyright:** (C) 2025 E.Noorlander / CodePress Development Team
|
||||
92
LICENSE
Normal file
92
LICENSE
Normal file
@ -0,0 +1,92 @@
|
||||
GNU AFFERO GENERAL PUBLIC LICENSE
|
||||
Version 3, 19 November 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU Affero General Public License is a free, copyleft license for
|
||||
software and other kinds of works, specifically designed to ensure
|
||||
cooperation with the community in the case of network server software.
|
||||
|
||||
The licenses for most software and other practical works are designed
|
||||
to take away your freedom to share and change the works. By contrast,
|
||||
our General Public Licenses are intended to guarantee your freedom to
|
||||
share and change all versions of a program--to make sure it remains free
|
||||
software for all its users.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
them if you wish), that you receive source code or can get it if you
|
||||
want it, that you can change the software or use pieces of it in new
|
||||
free programs, and that you know you can do these things.
|
||||
|
||||
Developers that use our General Public Licenses protect your rights
|
||||
with two steps: (1) assert copyright on the software, and (2) offer
|
||||
you this License which gives you legal permission to copy, distribute
|
||||
and/or modify the software.
|
||||
|
||||
A secondary benefit of defending all users' freedom is that
|
||||
improvements made in alternate versions of the program, if they
|
||||
receive widespread use, become available for other developers to
|
||||
incorporate. Many developers of free software are heartened and
|
||||
encouraged by the resulting cooperation. However, in the case of
|
||||
software used on network servers, this result may fail to come about.
|
||||
The GNU General Public License permits making a modified version and
|
||||
letting the public access it on a server without ever releasing its
|
||||
source code to the public.
|
||||
|
||||
The GNU Affero General Public License is designed specifically to
|
||||
ensure that, in such cases, the modified source code becomes available
|
||||
to the community. It requires the operator of a network server to
|
||||
provide the source code of the modified version running there to the
|
||||
users of that server. Therefore, public use of a modified version, on
|
||||
a publicly accessible server, gives the public access to the source
|
||||
code of the modified version.
|
||||
|
||||
An older license, called the Affero General Public License and
|
||||
published by Affero, was designed to accomplish similar goals. This is
|
||||
a different license, not a version of the Affero GPL, but Affero has
|
||||
released a new version of the Affero GPL which permits relicensing under
|
||||
this license.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
[Full AGPL v3 text continues... see https://www.gnu.org/licenses/agpl-3.0.txt]
|
||||
|
||||
===================================
|
||||
ADDITIONAL COMMERCIAL LICENSE TERMS
|
||||
===================================
|
||||
|
||||
This software is dual-licensed:
|
||||
|
||||
1. AGPL v3 for Open Source Use
|
||||
2. Commercial License for Proprietary Use
|
||||
|
||||
COMMERCIAL USE REQUIRES A LICENSE OR DONATION:
|
||||
|
||||
If you use CodePress CMS in a commercial setting, you must:
|
||||
a) Keep all modifications open-source under AGPL v3, OR
|
||||
b) Purchase a commercial license, OR
|
||||
c) Make a donation to support development
|
||||
|
||||
For commercial licensing inquiries, contact:
|
||||
Email: commercial@noorlander.info
|
||||
Website: https://git.noorlander.info/E.Noorlander/CodePress.git
|
||||
|
||||
NOTIFICATION REQUIREMENT:
|
||||
|
||||
Any modifications or derivative works must include:
|
||||
- A CHANGES.md file documenting all modifications
|
||||
- Attribution to original author (E.Noorlander)
|
||||
- A link back to the original repository
|
||||
- Notification to original author via GitHub/GitLab issue or email
|
||||
|
||||
Failure to comply with these terms constitutes copyright infringement.
|
||||
|
||||
Copyright (C) 2025 E.Noorlander / CodePress Development Team
|
||||
All rights reserved.
|
||||
225
LICENSE-INFO.md
Normal file
225
LICENSE-INFO.md
Normal file
@ -0,0 +1,225 @@
|
||||
# CodePress CMS - Licensing Information
|
||||
|
||||
## 📜 Dual License Model
|
||||
|
||||
CodePress CMS is available under two licenses:
|
||||
|
||||
### 1. 🆓 AGPL v3 (Free for Open Source)
|
||||
|
||||
**For non-commercial and open-source projects**, CodePress CMS is licensed under the [GNU Affero General Public License v3.0](https://www.gnu.org/licenses/agpl-3.0.html).
|
||||
|
||||
**You can:**
|
||||
- ✅ Use CodePress CMS for free
|
||||
- ✅ Modify the source code
|
||||
- ✅ Distribute your modifications
|
||||
- ✅ Use in personal projects
|
||||
- ✅ Use in educational projects
|
||||
|
||||
**You must:**
|
||||
- ✅ Share your source code modifications
|
||||
- ✅ License your modifications under AGPL v3
|
||||
- ✅ Provide attribution to the original author
|
||||
- ✅ Include a link to the original repository
|
||||
- ✅ Notify the author of significant modifications
|
||||
|
||||
### 2. 💼 Commercial License
|
||||
|
||||
**For commercial use in proprietary software**, you must either:
|
||||
|
||||
**Option A: Purchase a Commercial License**
|
||||
- Use in closed-source commercial products
|
||||
- No obligation to share source code
|
||||
- Priority support available
|
||||
- Custom modifications allowed
|
||||
- White-label options
|
||||
|
||||
**Option B: Make a Donation**
|
||||
- Minimum suggested donation: €50 for small businesses
|
||||
- Minimum suggested donation: €250 for medium businesses
|
||||
- Minimum suggested donation: €1000+ for enterprise
|
||||
|
||||
**Option C: Sponsorship**
|
||||
- Monthly recurring sponsorship
|
||||
- Recognition in README and website
|
||||
- Priority feature requests
|
||||
|
||||
---
|
||||
|
||||
## 🤝 What Requires a Commercial License?
|
||||
|
||||
You need a commercial license if:
|
||||
- ❌ You sell products/services using CodePress CMS
|
||||
- ❌ You use CodePress CMS internally in a for-profit company
|
||||
- ❌ You want to keep your modifications private
|
||||
- ❌ You integrate CodePress in proprietary software
|
||||
- ❌ You offer CodePress as a SaaS product
|
||||
|
||||
You **DON'T** need a commercial license if:
|
||||
- ✅ You're using it for personal projects
|
||||
- ✅ You're using it for educational purposes
|
||||
- ✅ You release all modifications as open-source (AGPL v3)
|
||||
- ✅ You're a non-profit organization
|
||||
- ✅ You're using it for internal testing/development
|
||||
|
||||
---
|
||||
|
||||
## 📢 Notification Requirement
|
||||
|
||||
When you modify CodePress CMS, you must:
|
||||
|
||||
1. **Create a CHANGES.md file** documenting your modifications
|
||||
2. **Keep attribution** to the original author (E.Noorlander)
|
||||
3. **Link back** to the original repository
|
||||
4. **Notify the author** via one of:
|
||||
- Create an issue on GitLab: https://git.noorlander.info/E.Noorlander/CodePress.git
|
||||
- Email: commercial@noorlander.info
|
||||
- Pull request with your improvements
|
||||
|
||||
**Example CHANGES.md:**
|
||||
```markdown
|
||||
# Changes to CodePress CMS
|
||||
|
||||
## Modified by: [Your Name/Company]
|
||||
## Date: [Date]
|
||||
## Original: https://git.noorlander.info/E.Noorlander/CodePress.git
|
||||
|
||||
### Changes:
|
||||
- Added feature X
|
||||
- Modified component Y
|
||||
- Fixed bug Z
|
||||
|
||||
### Attribution:
|
||||
Based on CodePress CMS by E.Noorlander
|
||||
Licensed under AGPL v3
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 💰 Commercial Licensing Pricing
|
||||
|
||||
### Individual Developer License
|
||||
**€99 one-time**
|
||||
- Single developer
|
||||
- Unlimited projects
|
||||
- Email support
|
||||
- 1 year updates
|
||||
|
||||
### Business License
|
||||
**€499 one-time**
|
||||
- Up to 10 developers
|
||||
- Unlimited projects
|
||||
- Priority email support
|
||||
- Lifetime updates
|
||||
- Custom modifications assistance
|
||||
|
||||
### Enterprise License
|
||||
**€2499 one-time**
|
||||
- Unlimited developers
|
||||
- Unlimited projects
|
||||
- Priority support (SLA)
|
||||
- Lifetime updates
|
||||
- Custom feature development
|
||||
- White-label options
|
||||
- Training and consulting
|
||||
|
||||
### SaaS License
|
||||
**€999/year**
|
||||
- Use in SaaS products
|
||||
- Unlimited end-users
|
||||
- Priority support
|
||||
- Regular updates
|
||||
- Custom branding
|
||||
|
||||
---
|
||||
|
||||
## 🎁 Donation Tiers
|
||||
|
||||
Support the project without needing a full license:
|
||||
|
||||
### Bronze Supporter - €25
|
||||
- Recognition in README
|
||||
- Supporter badge
|
||||
- Early access to updates
|
||||
|
||||
### Silver Supporter - €100
|
||||
- All Bronze benefits
|
||||
- Listed on sponsors page
|
||||
- Priority bug reports
|
||||
|
||||
### Gold Supporter - €500
|
||||
- All Silver benefits
|
||||
- Custom feature requests
|
||||
- Direct email support
|
||||
- Commercial license (1 project)
|
||||
|
||||
### Platinum Supporter - €1000+
|
||||
- All Gold benefits
|
||||
- Business license included
|
||||
- Custom consulting (4 hours)
|
||||
- Prominent sponsor recognition
|
||||
|
||||
---
|
||||
|
||||
## 📞 Contact for Commercial Licensing
|
||||
|
||||
**Email:** commercial@noorlander.info
|
||||
**Website:** https://git.noorlander.info/E.Noorlander/CodePress.git
|
||||
**GitLab:** https://git.noorlander.info/E.Noorlander/CodePress.git
|
||||
|
||||
**Response time:** Within 48 hours
|
||||
|
||||
---
|
||||
|
||||
## ❓ Frequently Asked Questions
|
||||
|
||||
### Q: Can I use CodePress CMS for free?
|
||||
**A:** Yes, if you comply with AGPL v3 (keep modifications open-source).
|
||||
|
||||
### Q: What if I modify the code?
|
||||
**A:** You must share modifications under AGPL v3 and notify the author.
|
||||
|
||||
### Q: Can I use it for my client's website?
|
||||
**A:** Yes, if the modifications are open-source. Otherwise, you need a commercial license.
|
||||
|
||||
### Q: What if I want to keep my changes private?
|
||||
**A:** Purchase a commercial license.
|
||||
|
||||
### Q: Is support included?
|
||||
**A:** Community support is free. Priority support requires a commercial license or donation.
|
||||
|
||||
### Q: Can I resell CodePress CMS?
|
||||
**A:** Only with a commercial license. Reselling under AGPL v3 is not allowed.
|
||||
|
||||
### Q: What about contributions?
|
||||
**A:** Pull requests are welcome! Contributors retain copyright but license under AGPL v3.
|
||||
|
||||
---
|
||||
|
||||
## 🔒 Copyright & Trademark
|
||||
|
||||
**Copyright (C) 2025 E.Noorlander / CodePress Development Team**
|
||||
|
||||
"CodePress" is a trademark of E.Noorlander. Unauthorized use of the trademark is prohibited.
|
||||
|
||||
---
|
||||
|
||||
## ⚖️ Legal Enforcement
|
||||
|
||||
Violation of these license terms may result in:
|
||||
- Legal action for copyright infringement
|
||||
- Damages and attorney fees
|
||||
- Injunction against further use
|
||||
- Public disclosure of violation
|
||||
|
||||
We prefer cooperation over litigation. Contact us if you have concerns about compliance.
|
||||
|
||||
---
|
||||
|
||||
## 📄 Full License Text
|
||||
|
||||
See [LICENSE](LICENSE) file for the complete AGPL v3 license text with additional commercial terms.
|
||||
|
||||
---
|
||||
|
||||
**Last Updated:** 2025-11-24
|
||||
**License Version:** 1.0
|
||||
@ -38,8 +38,10 @@ return [
|
||||
],
|
||||
|
||||
'credits' => [
|
||||
'author' => 'CodePress Development Team',
|
||||
'license' => 'MIT',
|
||||
'repository' => 'https://git.noorlander.info/E.Noorlander/CodePress.git'
|
||||
'author' => 'E.Noorlander / CodePress Development Team',
|
||||
'license' => 'AGPL v3 / Commercial',
|
||||
'license_info' => 'Dual-licensed: AGPL v3 for open-source, Commercial license for proprietary use',
|
||||
'repository' => 'https://git.noorlander.info/E.Noorlander/CodePress.git',
|
||||
'contact' => 'commercial@noorlander.info'
|
||||
]
|
||||
];
|
||||
Loading…
x
Reference in New Issue
Block a user