Metadata-Version: 2.4
Name: sitrtech
Version: 1.0.1
Summary: SitrTech Python code encryption CLI — protect Odoo, Django, Flask, FastAPI and Tornado projects
Author-email: SitrTech <support@sitrtech.com>
License: Proprietary
Project-URL: Homepage, https://sitrtech.com
Project-URL: Docs, https://sitrtech.com/docs
Project-URL: Repository, https://github.com/sohaib929/sitr_loader
Project-URL: Bug Tracker, https://github.com/sohaib929/sitr_loader/issues
Keywords: odoo,django,flask,fastapi,tornado,encryption,obfuscation,code-protection
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Security :: Cryptography
Classifier: Topic :: Software Development :: Build Tools
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: requests>=2.31
Requires-Dist: rich>=13
Requires-Dist: click>=8

# 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

```bash
pip install sitrtech
```

Get your API secret key from [sitrtech.com/api-keys](https://sitrtech.com/api-keys), then:

```bash
# 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

```bash
pip install sitrtech          # latest stable
pip install sitrtech==1.0.0   # pin a specific version
```

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

```bash
# 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`

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

### `sitr info`

```bash
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) |

```bash
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

```yaml
# 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

- **Documentation**: <https://sitrtech.com/docs>
- **API Keys**: <https://sitrtech.com/api-keys>
- **Support**: support@sitrtech.com
