Client-Side Architecture
Atomix QRGen is built with privacy as a core principle. All QR code generation happens entirely in your browser - no servers, no databases, no data transmission.100% Client-Side
All processing happens in your browser using JavaScript
No Backend
No servers receive or store your data
No Tracking
No analytics, cookies, or user tracking
No Storage
Data is never saved to disk or cloud
How It Works
Static Site Delivery
When you visit Atomix QRGen, you download a static HTML/CSS/JavaScript bundle built with Astro. This is the only network request made to load the application.
Local Processing
All form data you enter is processed locally in your browser using Preact components. The data never leaves your device.Reference:
src/components/qr-code-app/app/qr-gen-app.tsx:8-9Client-Side Encoding
Your data is encoded into QR format using local encoding functions. For example, WiFi credentials are formatted client-side:Reference:
src/domain/encoders/encoders.ts:25-28Local QR Generation
The Reference:
qr-code-styling library generates the QR code image directly in your browser:src/components/qr-code-app/cards/qr-preview/card-qr-preview.tsx:27-33The entire application runs on your device. Even your browser’s Developer Tools Network tab will show zero network requests after the initial page load.
Privacy Features
No Data Transmission
Unlike many online QR generators that send your data to a server for processing, Atomix QRGen processes everything locally:src/domain/encoders/encoders.ts:99-125
All encoding logic is pure TypeScript functions that run in your browser.
No Analytics or Tracking
The application includes:- No Google Analytics
- No Facebook Pixel
- No third-party tracking scripts
- No cookies (except essential browser session cookies)
- No fingerprinting
- No usage telemetry
No Local Storage
The application does not store any data in:localStoragesessionStorageIndexedDB- Browser cookies
- Service workers
Validation Without Transmission
All form validation happens locally before QR generation:src/domain/validation/validators.ts:71-96
Validation ensures data quality without ever sending it to a server.
Security Benefits
Protection of Sensitive Information
Atomix QRGen is perfect for generating QR codes containing sensitive data:WiFi Passwords
Generate WiFi QR codes without exposing your password to third parties
Payment Details
Create payment QR codes without sharing account numbers with servers
Contact Information
Generate vCard QR codes without uploading your contact details
Private URLs
Create QR codes for internal/private URLs without logging them
Since all processing is client-side, you can safely use Atomix QRGen for:
- Corporate WiFi credentials
- Banking payment information
- Personal contact details
- Private event invitations
- Confidential URLs
No Server Vulnerabilities
Because there’s no backend:- No database to be breached
- No server logs containing your data
- No API endpoints to be exploited
- No risk of data retention policies
- No third-party data processors
Open Source Transparency
The entire source code is available on GitHub, allowing you to:- Verify there are no hidden data collection
- Audit the privacy claims
- Self-host for complete control
- Modify and customize as needed
Technology Stack
The privacy-focused architecture is enabled by these technologies:package.json:31-37
- Astro: Static site generator that pre-renders everything at build time
- Preact: Lightweight React alternative for interactive UI (runs in browser)
- qr-code-styling: Pure JavaScript QR generation library
- Tailwind CSS: CSS framework with no runtime JavaScript
Self-Hosting for Maximum Privacy
For ultimate privacy control, you can self-host Atomix QRGen:Since Atomix QRGen is entirely static, you can even open
dist/index.html directly in your browser without any web server. Perfect for offline use!Offline Usage
Once loaded, Atomix QRGen works completely offline:- Visit the site once while online to cache the assets
- Disconnect from the internet
- Continue generating QR codes
- All code is delivered on first load
- No API calls are made during usage
- No external resources are fetched
- All libraries are bundled
Comparison with Server-Based Generators
| Feature | Atomix QRGen | Typical Server-Based |
|---|---|---|
| Data Transmission | None | All data sent to server |
| Server Logs | No logs | Data may be logged |
| Data Storage | Never stored | Often stored temporarily or permanently |
| Privacy Policy | Not needed | Required (GDPR, etc.) |
| Third Parties | None | May use analytics, CDNs, etc. |
| Offline Work | Yes (after first load) | No |
| Self-Hosting | Easy (static files) | Complex (requires backend) |
| Audit Transparency | Full (open source) | Limited |
Privacy FAQ
Can the developer see my data?
Can the developer see my data?
No. There is no mechanism for data to be transmitted to anyone. All processing happens exclusively in your browser.
Is my data saved anywhere?
Is my data saved anywhere?
No. The application does not use localStorage, sessionStorage, cookies, or any form of persistent storage. When you refresh the page, all data is gone.
Does it work offline?
Does it work offline?
Yes! Once the initial page is loaded, you can disconnect from the internet and continue generating QR codes. All the necessary code is already in your browser.
Can I verify these privacy claims?
Can I verify these privacy claims?
Absolutely. The source code is open source and available at github.com/Ephistopheles/atomix-qrgen. You can:
- Review the code yourself
- Check your browser’s Network tab (no requests after page load)
- Inspect localStorage/cookies (nothing stored)
- Build and host it yourself
What about the hosting provider?
What about the hosting provider?
If using a hosted version, the hosting provider may have basic server logs (IP address, user agent, timestamp) from the initial page load. For zero logging, self-host the application or run it locally.
Are there any external dependencies loaded at runtime?
Are there any external dependencies loaded at runtime?
No. All dependencies are bundled during the build process. There are no external CDNs, fonts, or scripts loaded from third-party servers.
Best Practices for Privacy
Use HTTPS
Always access Atomix QRGen over HTTPS to prevent man-in-the-middle attacks during the initial page load.
Verify the Domain
Make sure you’re on the official domain or your own self-hosted instance. Check the URL carefully.
Self-Host for Sensitive Data
For highly sensitive data, consider self-hosting on your own infrastructure or running locally.
Check Browser Extensions
Some browser extensions may capture form data. Use a clean browser profile for maximum privacy.