Skip to main content

SitrTech Python code encryption CLI — protect Odoo, Django, Flask, FastAPI and Tornado projects

Project description

SitrTech — Python Code Encryption CLI

Protect Odoo, Django, Flask, FastAPI and Tornado projects with AES-256 encryption, licensing controls, and anti-reverse-engineering in one command.

Quick start

# Recommended for CLI tools (no venv needed)
pipx install sitrtech

# Or with pip
pip install sitrtech

Get your API secret key from sitrtech.com/api-keys, then:

# Encrypt an Odoo addon
sitr encrypt my_module.zip --framework odoo --secret sk-...

# Encrypt a Django project
sitr encrypt my_project.zip --framework django --secret sk-...

# Check your token balance
sitr balance --secret sk-...

Installation

# pipx — best for CLI tools, works on Ubuntu/Debian/macOS without issues
pipx install sitrtech
pipx upgrade sitrtech          # upgrade later

# pip — standard Python package manager
pip install sitrtech           # latest stable
pip install --upgrade sitrtech # upgrade
pip install sitrtech==1.0.1    # pin a specific version

Ubuntu / Debian users: If you see externally-managed-environment, use pipx install sitrtech instead.

Python 3.8 → 3.14 · Windows, macOS, Linux

Usage

sitr encrypt

sitr encrypt <FILE.zip> [OPTIONS]

Arguments:
  FILE.zip              Zipped project folder

Options:
  -f, --framework TEXT   odoo | django | flask | fastapi | tornado  [default: odoo]
  -v, --version TEXT     Framework version (e.g. 16.0 for Odoo)
  -e, --expiry DATE      Expiry: 2026-12-31 or 2026-12-31T23:59:00Z
  -n, --network CIDR     Allowed IP/CIDR (repeatable)
  -o, --output PATH      Output file (default: <input>_encrypted.zip)
  -s, --secret TEXT      API secret key  [env: SITR_SECRET]
  -b, --base URL         API base URL    [env: SITR_BASE]

Examples

# Odoo (default)
sitr encrypt my_addon.zip --framework odoo

# Django with expiry and IP restriction
sitr encrypt backend.zip --framework django \
  --expiry 2026-12-31 \
  --network 10.0.0.0/24

# FastAPI project
sitr encrypt api.zip --framework fastapi

# Flask with multiple IP ranges
sitr encrypt webapp.zip --framework flask \
  --network 192.168.1.10 \
  --network 10.0.0.0/8

sitr balance

sitr balance --secret sk-...
# ┌─────────────────────────────┐
# │       SitrTech Account      │
# │  Tokens  │  5,000           │
# │  Plan    │  Pro             │
# │  Rate    │  0.3 tokens/line │
# └─────────────────────────────┘

sitr info

sitr info
# Shows all supported frameworks and required project structure

Environment variables

Variable Description
SITR_SECRET API secret key (avoids typing it)
SITR_BASE Override API URL (default: sitrtech.com)
export SITR_SECRET=sk-your-key-here
sitr encrypt my_project.zip --framework django

Project structure requirements

Framework Required entry-point file
Odoo __manifest__.py
Django manage.py
Flask app.py or wsgi.py
FastAPI main.py or asgi.py
Tornado main.py or server.py

Always zip the root folder — not its contents:

# Correct ✓
zip -r my_addon.zip my_addon/

# Wrong ✗
cd my_addon && zip -r ../my_addon.zip .

CI/CD integration

# GitHub Actions
- name: Encrypt Odoo addon
  env:
    SITR_SECRET: ${{ secrets.SITR_SECRET }}
  run: |
    pip install sitrtech
    sitr encrypt dist/my_addon.zip --framework odoo --output dist/my_addon_encrypted.zip

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sitrtech-1.0.2.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sitrtech-1.0.2-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file sitrtech-1.0.2.tar.gz.

File metadata

  • Download URL: sitrtech-1.0.2.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for sitrtech-1.0.2.tar.gz
Algorithm Hash digest
SHA256 8c70680285377a45ad70355508d927b5403386250b30821a8857e92cd25f84c0
MD5 cff22e759b4989aba9f64522b5e9496f
BLAKE2b-256 bebfebd3ff3b92a05d603d1daaa0b2f89799ced8fea34d870329dc2f3d2e6a6a

See more details on using hashes here.

Provenance

The following attestation bundles were made for sitrtech-1.0.2.tar.gz:

Publisher: publish-pypi.yml on sohaib929/sitr_loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sitrtech-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: sitrtech-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 8.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for sitrtech-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 88198584b755b4f7219c76881881c4dc1a0a1322469460888ef49f890deb4639
MD5 94f68fd80281550acc0f27e76d5fa206
BLAKE2b-256 c2e4345bcfccc13c99a449013c93f4211169e57b3a9dfac04ae9c032ae19a9cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for sitrtech-1.0.2-py3-none-any.whl:

Publisher: publish-pypi.yml on sohaib929/sitr_loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page