Source Code Protector
by DUO-TEK Software Vietnam https://apps.odoo.com/apps/modules/browse?author=DUO-TEK%20Software%20Vietnam$ย 114.06
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Lines of code | 293 |
| Technical Name |
dwo_source_code_protector |
| License | OPL-1 |
| Website | https://apps.odoo.com/apps/modules/browse?author=DUO-TEK%20Software%20Vietnam |
| Versions | 17.0 18.0 19.0 |
๐ Source Code Protector
Ship your Odoo addons. Keep your source code yours.
Protect and compile your business logic to native binaries in one click โ no command line, no DevOps required.
Buy Now & Secure Your Addons Today โThe Problem
Every time you deliver a module, your .py source code goes with it.
Clients, competitors, and resellers can read, copy, modify, and resell your work โ
without your permission and without paying you. Years of investment in your business logic, exposed in plain text.
The Solution
|
๐
Protect Logic
Method bodies are extracted from your source files and moved into a hidden package โ invisible to your clients. |
โ๏ธ
Compile to Binary
The extracted logic is compiled to native |
๐ฆ
Drop-In Replacement
The protected module has the exact same structure and installs/upgrades on Odoo exactly like the original โ zero changes required. |
How It Works โ 3 Simple Steps
|
1
Open the Wizard
Go to Settings โ Source Code Protector (last item in the Settings menu). |
2
Upload Your Zip
Upload a |
3
Download & Deploy
Download the |
Key Features
|
๐ฑ๏ธ One-Click UI
No terminal, no scripts. Entire workflow runs inside Odoo's Settings menu. |
๐ Multi-Module Zip
One zip can contain many modules. All are detected and processed in a single run. |
๐ Auto-Detect Manifest
Manifest at zip root or in a subfolder โ both layouts detected automatically. |
๐ AES Zip Password
Input can be AES-encrypted; output is re-encrypted with the same password. |
|||
|
๐ Per-Module Report
Result table lists each module: Protected / Skipped, method count, compiled count. |
๐งน Auto Cleanup
Temp files deleted immediately after each run. Autovacuum cleans orphaned dirs older than 24 h. |
๐ Runs On Your Server
No external service, no API calls. Your source code never leaves your instance. |
๐๏ธ Exact Structure
Output zip mirrors input 1:1 โ only business logic inside modules is replaced. |
|||
What Gets Protected
| Item | Action | Reason |
|---|---|---|
| Regular instance methods | โ Protected & compiled | Core business logic |
async def methods | โ Protected & compiled | Async-safe delegation |
@property getters/setters | Left unchanged | Delegation changes semantics |
@staticmethod, @classmethod | Left unchanged | Different call semantics |
Dunder methods (__init__, __str__โฆ) | Left unchanged | Called by Odoo/Python internals |
Generator methods (yield) | Left unchanged | Extracting a generator body breaks iterator protocol |
__init__.py, migrations/, controllers/ | Left unchanged | Odoo needs these untouched to load the module |
Platform Compatibility
A
.so/.pyd file only runs on the exact Python version + OS + CPU architecture it was compiled on.
Compile on a machine that matches your Odoo server. Always test on a staging database before production.
Frequently Asked Questions
Yes. The protected module preserves the complete class structure โ all fields, decorators, and _name/_inherit are untouched. Odoo registers the model exactly as before. Clients will never notice the difference at runtime.
Native binaries are dramatically harder to reverse-engineer than Python bytecode (.pyc). Decompiling requires significant expertise and effort โ a strong practical deterrent for most addons theft scenarios.
Yes. Upload a zip with any number of modules. The tool auto-detects all module roots, protects each independently, and returns one output zip with the same structure โ all modules included, protected ones swapped in-place.
Yes. Enter a password in the wizard โ the tool decrypts the input zip and re-encrypts the output zip with the same password using AES-256.
Two packages: jprotect and pyzipper. Run pip install jprotect pyzipper. Odoo will display a clear error if either is missing.
No. Everything runs locally on your Odoo server. No data leaves your instance.
Ready to Protect Your Addons?
One-time purchase. Protects every module you build โ forever.
Join the developers who ship with confidence.
Questions? Contact us!
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Lines of code | 293 |
| Technical Name |
dwo_source_code_protector |
| License | OPL-1 |
| Website | https://apps.odoo.com/apps/modules/browse?author=DUO-TEK%20Software%20Vietnam |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. 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.
Please log in to comment on this module