Browser-local processing · Zero upload
VEIL logo

Ship your program. Not your code.

Sealed on your machine. Not our servers.

You coded something great. Now you want or need to share it — with a client, a friend, or maybe the world — without sharing your code.

Built by you or AI. Protected by VEIL.
No upload No account No SaaS
Open devtools. Copy this page. Try run it locally.
That's what VEIL does. Runs here. Not as source.

You built the program.
Now what?

Solo devs, vibe coders and AI agents face a weird gap: your code works, but you can't afford a security audit, you don't have a legal team, and "just open source it" means giving away the thing you built.

YOUR CHOICE.
📂

1st — Send raw source

Clean project files anyone can copy, modify, and redeploy. Your API keys, prompts, and implementation details are all exposed.

🔒

2nd — Send with VEIL

The recipient gets working software. You keep your implementation. Harder to inspect. Harder to reuse directly. Project material arrives sealed rather than as clean source.

You share something that works.
Not your source that can be copied.

Share working software without handing over your implementation. Harder to inspect than raw code.

No backend to maintain

You do not build a license server or activation system. VEIL's Worker handles Deploy and Secure runtime authorization.

No licensing logic

You don't write expiry checks or activation flows. VEIL handles the hardening. You handle the code.

Just set it and ship

Drop your files, pick a tier, download the seal. The recipient runs it. You keep the original.

Test first.
Pay only if it works.

Same process for trial and paid. No account. No upload. No subscription.

1

Drop your code.

Drag your folder or files into the browser. Everything stays on your machine. VEIL analyzes compatibility instantly.

2

Generate a sealed package.

Run the free trial. If it breaks, you lost nothing. Same sealing path as the paid product.

3

Run the result.

Same behavior. Different form. If it works, you know exactly what you're buying. Pay once. Seal forever.

Honest protection.
No false promises.

✓ What VEIL does

  • Ships runnable logic, not readable source The recipient gets a sealed package — not your project folder, not your comments, not your git history.
  • Hides secrets from casual inspection API keys and config values are sealed as data, not plain text. Harder to grep. Harder to leak.
  • Binds to environment if you want WEB VEIL can check the browser hostname. Classic Deploy checks its selected domain and separate deployment key locally after delivery; Secure adds a machine fingerprint.
  • Copied artifacts are less useful than original source A stolen sealed package is harder to study, modify, or redeploy than a normal source checkout.
  • Refuses supported inspection conditions Classic VEIL checks for active tracing, debugger attachment, injection indicators, and core-dump exposure before decryption, then monitors the launched process while it runs.
  • Works entirely in your browser No upload. No account. No data retention. Your code never touches our servers.

× What VEIL does not do

  • Fix your bugs VEIL seals your code exactly as written. If it has bugs, the sealed version has the same bugs.
  • Stop a determined reverse engineer Given enough time and skill, anything can be cracked. VEIL is hardening — not magic.
  • Replace your original source Keep your originals safe. VEIL is one-way. You cannot recover source from a sealed package.
  • Work on untrusted hosts If someone controls the entire machine, they can instrument anything. VEIL raises the bar, not the ceiling.
  • Make readable source invisible If you can still see readable source after sealing — don't use it. That's your signal to stop.

Bottom line: VEIL is a hardening layer, not absolute security. It is practical protection at a price that makes sense for user projects protection without subscriptions.

Control how your software runs.

Optional binding layers let you decide where, when, and for how long your code executes.

Set how long it runs

The free trial expires in 3 hours. Paid tiers are permanent. You choose the lifespan before you seal.

🌐

Control where it runs

WEB VEIL checks the browser hostname. Classic Deploy checks the selected domain and separate deployment key locally before opening.

🔐

Control everything

Secure adds the expected machine fingerprint to the paid domain and deployment-key checks.

Control how your software runs — across time, machines, and environments.

Pay once.
No subscription.
No saas.

Every tier includes a free 3-hour trial. Test before you pay. Payment is made in USDC on Solana. Test the free trial before buying so you can confirm your code works.

Trial
$0
Generate a real sealed package for 3 hours. Use it to prove your code works under VEIL before spending money. No payment required.
  • Full sealing pipeline
  • 3-hour expiration
  • Same sealing and compatibility path
  • Test before you buy
Start Trial
Share
$10 USDC
Seal a single file. The recipient needs the package + runner. No domain binding. No hardware lock. Just working code that runs anywhere.
  • Single-file sealed delivery
  • Package + runner output
  • Runs on any machine
  • Harder to inspect than raw source
Get Share
Secure
$50 USDC
Everything in Deploy, plus verification of the expected machine fingerprint before the project opens.
  • Everything in Deploy
  • Hardware fingerprint binding
  • Copy-resistant execution
  • Best for protected servers
Get Secure
Trial
$0
Generate a 3-hour veiled HTML artifact. Download it, inspect it in devtools, test it locally. Prove it works before paying.
  • 3-hour veiled HTML
  • Inspect before you trust
  • Same compiler as paid
  • No payment required
Start Trial
Share
$50 USDC
One veiled HTML file that runs anywhere. Frontend logic is moved into sealed envelopes. Devtools shows noise, not your clean code.
  • One HTML artifact out
  • Sealed JS envelopes
  • Runs locally or hosted
  • Inspect-first workflow
Get Share
HTML+
$150 USDC
HTML entry plus local project files. Still outputs one veiled HTML. Broader reach, more edge cases. Extensive trial testing recommended.
  • Multi-file project seal
  • Nested module graphs
  • One HTML artifact out
  • Beta — test thoroughly first
Get HTML+
Test before you pay. The trial uses the same sealing and compatibility path with a 3-hour expiry.

Two tools, same goal.
Share your program.
Keep your source code.

VEIL for backend code and scripts. WEB VEIL for browser pages and HTML deliverables.

1
Choose tier and drop your files
TRIAL VEIL
Set date
Drop files
Check compatibility
Unlock
Download seal
3-hour test package
TRIAL — Free compatibility testing
$0
This is a real VEIL package for testing only. It expires 3 hours after generation and becomes unusable after that window. Use it to confirm your code runs correctly under VEIL before buying a permanent unlock. Sealing runs locally; online trial activation is free and does not require payment.

Leave both fields blank for a portable trial, or enter the fields to test local domain, key, and hardware binding.

Best for: confirming your code runs correctly under VEIL, finding breakages early, and proving compatibility before buying the production seal.

✓ No binding required
SHARE — Runs anywhere
$10
Seal runnable code into a portable VEIL package that can be shared without handing over your original source tree. The sealed package and runner travel together, and the output is built for handoff, demos, internal tools, and offline-first use. After generation, Share runs on the recipient's machine without contacting VEIL.

Best for: LLM-built tools, client demos, contractor handoff, internal scripts, and offline-first applications.

Domain deployment lock
DEPLOY — Domain deployment
$25
Your sealed backend or runtime package requires a paid entitlement for the domain and proof of a separate deployment private key before it opens. The private key stays on the authorized server and is not included in the package or runner.

Each startup checks the selected domain and matching deployment private key locally. After the package is delivered, it does not contact VEIL, so it can keep running if the VEIL site is unavailable.
Keep the matching private key outside the package and runner
Required for Deploy: enter the live domain this package should be bound to

Note: this binds to one domain only. Subdomains are treated as separate domains.

Domain + machine locked
SECURE — Servers only
$50
Secure requires the selected domain, the separate deployment private key, and the expected machine fingerprint. All three checks run locally before the package opens, and the delivered package does not depend on VEIL being online.

This is the closest tier to “run backend code without giving attackers clean backend logic to study first.”
python3 -c "import platform,hashlib,os; paths=('/etc/machine-id','/var/lib/dbus/machine-id'); uid=next((open(p).read().strip() for p in paths if os.path.exists(p)),''); material=('linux|'+platform.machine()+'|'+uid) if uid else ('linux-fallback|'+platform.machine()+'|'+platform.node()+'|'+platform.processor()); print(hashlib.sha256(material.encode()).hexdigest()[:32])"
python3 -c "import platform,hashlib,re,subprocess; raw=subprocess.check_output(['ioreg','-rd1','-c','IOPlatformExpertDevice'],text=True); uid=re.search(r'"IOPlatformUUID"\s*=\s*"([^"]+)"',raw).group(1).lower(); material='macos|'+platform.machine()+'|'+uid; print(hashlib.sha256(material.encode()).hexdigest()[:32])"
$cpu = (Get-CimInstance Win32_Processor).ProcessorId; $board = (Get-CimInstance Win32_BaseBoard).SerialNumber; $uuid = (Get-CimInstance Win32_ComputerSystemProduct).UUID; $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash([Text.Encoding]::UTF8.GetBytes("$cpu|$board|$uuid"))).Replace("-","").Substring(0,32).ToLower(); Write-Output $hash
Hardware signature: not set
Runtime expiry: disabled
Drop your files or folder here
Python · JavaScript · Ruby · Bash · PHP · Lua · Perl · R · .env · config files
VEIL analyzes every file instantly in your browser, on your system. Nothing is ever uploaded to our server from this tool. After trial or payment approval, the actual veiling still happens on your machine. This site uses VEIL itself on the client side because we trust the same sealed runtime model we sell.
Analysis complete
2
Activate the free trial or pay to unlock permanent generation
Drop compatible files above. Free trials activate online; paid tiers unlock after payment approval.
Recipient Dependencies
Does your sealed code use any pip libraries? List them here — they will be included in the instructions file so the recipient knows exactly what to install. Leave blank if your code only uses Python built-ins.

sealed_package_[name].veilx

The sealed package. Named to match the runner it belongs with.

[name]_envelope.run

The matching runner. Keep it with the package so the pair is obvious.

HOW_TO_RUN.html

Recipient double-clicks this. Auto-detects their OS, shows copy-paste commands, explains every step.

What to send the recipient

Send all downloaded files in one folder or zip.
Tell them: double-click HOW_TO_RUN.html first.

The instructions file handles everything else — Python check, library install, and the exact command to run.

The matching names make it clear what goes with what.

The recipient gets the sealed package and the runner, not your original project tree.

TRIAL WEB VEIL
Set date
Drop HTML
Seal locally
Unlock
Download
1
Drop your finished HTML
Single HTML or HTML+ beta
3-hour test package
TRIAL — Free HTML sealing test
$0
Test the WEB VEIL flow on one finished HTML page before paying. The page is sealed locally in your browser so you can confirm the result before buying a production seal.

Best for: checking that your HTML page still behaves correctly after its browser JavaScript is sealed.

Leave blank for local testing or enter your live domain
Select one finished HTML file
Inline classic or module JavaScript Build it normally first. Seal it only after it already works.
Waiting for one HTML file.
Base Name
0
Script Tags
0
Scripts To Seal
0
Blocked
2
Seal, download, inspect
Saved artifact first
3
What to check first
Inspect the saved file
  • One HTML entry point only.
  • Inline classic and inline type="module" scripts are supported.
  • External src scripts are supported when the browser can fetch them directly, such as absolute http(s) or data: URLs.
  • Relative local JS, CSS, and common page assets work when you add them through Add Project Files.
  • The output is one rewritten veiled HTML with embedded VEIL envelopes and a tiny runner.
  • The download also includes a detached deployment manifest. Your own Cloudflare Worker or private server can verify the exact HTML bytes before serving them; this does not require VEIL to stay online after delivery.
  • Trial manifests verify only the downloaded file hash. A paid production WEB VEIL release receives a signed manifest that must be checked with the pinned VEIL public key.
  • Download the file first and inspect that saved artifact in your own browser.
  • If you still see readable source, do not use it.
  • If the source looks veiled, test runtime next.
No build yet.

Try it.
Decide for yourself.

Just a better way to share your working logic, without sharing your code.

Try free 3-hour trial
Trial failed?

Email us. We'll improve VEIL.

If your free trial does not run correctly, send what you tried, what failed, and the support code from the output. We use real failures to adapt VEIL for more builders and edge cases.

Veilsite@protonmail.com