![]() |
Building and Deploying |
Building a Sheerpower program is similar to compiling and linking in traditional languages. Deployment is optional and does not affect how your program runs. However, it protects your source code and enables secure distribution.
For example, deploying MyProgram.spsrc
creates
MyProgram.sprun
. The .sprun
file contains
minified, compressed, base64-encoded, and encrypted text that hides the
program’s source code.
To run a .sprun
file, the receiver can either install
Sheerpower, or you can provide them with a copy of
sp4gl.exe
, renamed as desired (e.g.,
MyProgram.exe
). Place this renamed file in the same
folder as MyProgram.sprun
. Running
MyProgram.exe
will then execute the deployed program.
.sprun
FileThis build log highlights several core strengths of the Sheerpower environment:
Validates Performance Claims: Sheerpower compiles at “over 500,000 lines per second.” This log shows it reaching 618,500 lines/sec on a large, real-world application built on a compact server with 32GB of RAM (approx. $1200).
Illustrates the “Unity Build”: The build seamlessly
processed 419 included files. This demonstrates Sheerpower’s ability
to manage complex, modular projects with ease—key to fast startup of
deployed .sprun
files.
Shows Integrated Tooling: The
Insights ... .html
line is a perfect example of
integrated tooling. With option insights
enabled, code
analysis is automatic, providing developers with immediate,
actionable feedback.
The Sheerpower Portable Runnable Image (.sprun
) is a
deployment format purpose-built for commercial software. Far more
than simple obfuscation, it’s a sophisticated container that
provides robust source code protection, fast startup, and secure,
flexible licensing.
The creation of a .sprun
file begins with a "Unity
Build," where the main source and all %include
files
are merged into a single block of code. This unified source then
undergoes a four-stage process:
A SPRUN file includes three main sections:
--required
block for legal text and metadata--code
block containing base64-encrypted data
All %include
files are bundled into a single in-memory
buffer, eliminating file system latency. The runtime lexer benefits
from uninterrupted, high-speed parsing. For large projects, SPRUN
files often start faster than raw source code.
A common vulnerability in protected runtimes is the risk that an attacker could perform a memory dump to extract decrypted code. Sheerpower avoids this by processing encrypted code line by line.
Unlike systems that decrypt an entire application into memory, Sheerpower's VM only holds one decrypted line at a time. After compiling that line into internal p-code, the decrypted text is immediately erased from memory.
This transient approach means that even advanced memory analysis would fail to reconstruct the original source. It’s a deliberate design that ensures security through process as well as encryption.
The --required
block is hashed into the decryption
key. Changing any character invalidates the hash, making the SPRUN
file unusable.
For licensing, developers can embed custom text into the tamper-proof
--required
section using the
%compile "your text here"
directive. This can include
client names, license keys, expiration dates, or feature flags.
Because it becomes part of the hashed block, any tampering will
invalidate the file—making license enforcement secure and automatic.
The SPRUN format is a cohesive, high-performance deployment solution that protects your code, accelerates startup, and enables secure commercial distribution—fully integrated with the Sheerpower Virtual Machine. It’s the default choice for deploying professional-grade Sheerpower applications.
sp4gl.exe /build
or F6 in VS Code to compile
and deploy Sheerpower source code into a secure .sprun
file..sprun
files are minified, compressed, encrypted,
and base64-encoded for full source code protection..sprun
files run exactly
like source code but are secure and portable.%include
files into one
in-memory image, eliminating I/O delays at runtime
(Unity Build).--required
section in a .sprun
file is tamper-proof and hashed into the decryption key—any change
invalidates the deployment.%compile
directives..sprun
plus
sp4gl.exe
(renamed as MyProgram.exe
)
creates a portable, executable application.
Hide Description
|
|
Enter or modify the code below, and then click on RUN |
Looking for the full power of Sheerpower?
Check out the Sheerpower website. Free to download. Free to use. |