2. Concepts

2.1. Terms

Project

Project is used to manage scripts and options

Mini Script

Python script, generated by pyarmor

It need import Python extension pyarmor_mini to run

RFT Script

Python script, generated by pyarmor, only functions, classes, attributes etc. in the scripts are renamed

It need not any other extension to run

pyarmor

One cli application to generate obfuscated scripts

pyarmor_mini

Python extension, published in PyPI package pyarmor.mini

pyarmor.cli

Python package, published in PyPI

pyarmor.mini

Python package, published in PyPI, provide extension pyarmor_mini

2.2. Project

graph Project { node [shape=component] C1 [label="Scripts"] C2 [label="Modules"] C3 [label="Packages"] X1 [label="Options" shape=ellipse] }

2.3. Mini Script

from pyarmor_mini import __pyarmor__
__pyarmor__(__name__, b'xxxx')

2.4. RFT Script

def pyarmor__1(pyarmor__2):
  return pyarmor__2 + 'a'

pyarmor__1('abc')

2.5. pyarmor commands

graph pyarmor { node [shape=rect] C1 [label="pyarmor init"] C2 [label="pyarmor env"] C3 [label="pyarmor build"] }

Sub Commands

digraph Structure { P1 [label="Project" shape=component] C1 [label="pyarmor init" shape=rect] C2 [label="pyarmor env" shape=rect] C3 [label="pyarmor build" shape=rect] X1 [label="Options"] S1 [label="Mini Script" shape=component] S2 [label="RFT Script" shape=component] X1->C1 C1->P1 [taillabel="create"] X1->C2 C2->P1 [taillabel="update"] P1->C3 C3->S1 [label="generate" labelfloat=true] C3->S2 }

Command Relations