diff --git a/www/index.html b/www/index.html index 94fbc2c..63beff1 100644 --- a/www/index.html +++ b/www/index.html @@ -122,6 +122,20 @@ pre.cb{background:var(--bg2);border:1px solid var(--border);border-radius:var(-- .flow-diagram{background:var(--bg2);border:1px solid var(--border);border-radius:var(--rl);padding:2rem;font-family:var(--mono);font-size:.8rem;line-height:2;text-align:center} .fbox{border:1px solid var(--border);border-radius:6px;padding:.5rem 1rem;display:inline-block;color:var(--t1);background:var(--bg3);margin:.25rem 0} .farrow{color:var(--t3);font-size:1rem;margin:.25rem 0} +/* ARCH */ +.arch-wrap{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:start} +.flow-diagram{background:var(--bg2);border:1px solid var(--border);border-radius:var(--rl);padding:1.4rem;font-family:var(--mono);font-size:.76rem;line-height:2;text-align:center} +.fbox{border:1px solid var(--border);border-radius:5px;padding:.3rem .7rem;display:inline-block;color:var(--t1);background:var(--bg);margin:.1rem 0;font-size:.72rem} +.fbox.a1{border-color:var(--a1);color:var(--a1)}.fbox.a2{border-color:var(--a2);color:var(--a2)}.fbox.ar{border-color:var(--rust);color:var(--rust)}.fbox.a4{border-color:var(--a4);color:var(--a4)} +.farrow{color:var(--border2);font-size:.85rem} + +/* COMPONENT LIST */ +.comp-list{display:flex;flex-direction:column;gap:.8rem} +.comp{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r);padding:.9rem 1.1rem;display:flex;gap:.85rem;align-items:flex-start;transition:border-color .2s} +.comp:hover{border-color:var(--border2)} +.comp-num{font-family:var(--mono);font-size:.7rem;color:var(--a1);background:rgba(88,166,255,.09);border:1px solid rgba(88,166,255,.28);border-radius:4px;padding:.12rem .45rem;flex-shrink:0;margin-top:2px} +.comp-title{font-weight:600;font-size:.875rem;margin-bottom:.2rem} +.comp-desc{color:var(--t2);font-size:.8rem;line-height:1.55} /* STEPS */ .steps{display:flex;flex-direction:column;gap:1.5rem} @@ -209,7 +223,7 @@ footer{background:var(--bg);border-top:1px solid var(--border);padding:4rem 2rem
BZOD is a complete multi-user URL management platform featuring custom landing pages, analytics, audit logging, and automated disaster recovery. Powered entirely by SQLite.
A highly optimized architecture providing your organization with total ownership of internal and external links, operational data, and analytics.
-Create memorable URLs. Features include password protection, expirations, and elegant preview cards.
Host structured landing pages with built-in analytics, dynamic QR codes, and integrated domains.
Accurate visitor tracking encompassing browser metrics, referrers, and seamless CSV exports.
Engineered in Rust to fundamentally eliminate memory leaks, null pointers, and thread data races.
Production-grade platform for organizations requiring complete ownership of their links, analytics, and operational data.
+Create short, memorable URLs with custom slugs. Password protection, expiration dates, and smart preview pages included.
Host custom landing pages with full analytics tracking. QR code support, custom domains, and rich content editing.
Comprehensive visitor tracking with browser detection, referrer analysis, daily/monthly statistics, and CSV/JSON export.
Built with Rust for zero buffer overflows, use-after-free bugs, or null pointer issues. Complete memory safety at compile time.
Full user management with quotas, API tokens, session management, and tenant isolation. Role-based access control.
Complete audit trail of all operations. Moderation tools, security events, and compliance-ready logging for enterprises.
Disaster recovery workflows with automated backups. One-command restore. No external dependencies required.
Reliable file-based storage with ACID transactions. No PostgreSQL, Redis, or Kubernetes needed. Single binary deployment.
A tenant-isolated structure pairing the Axum async framework with optimized SQLite database files, segregating content from high-volume analytics.
+Tenant-isolated multi-user architecture with separate databases for content and analytics. Built on Axum web framework and SQLite.
High-performance async HTTP server handling routing, middleware validation, CSRF protection, and structured error responses.
All public URLs are tracked in the system.db -> global_slugs table to prevent collisions across different isolated users.
Lightweight, thread-safe tracking workers capture device profiles and traffic origins into tenant databases without degrading redirect speeds.
High-performance async HTTP server. Handles routing, middleware, authentication, and request validation. Graceful shutdown and error handling.
Isolated databases per user. System DB for global state, users DB for accounts/sessions, tenant DBs for content and analytics.
Real-time visitor tracking with browser detection, referrer analysis, and aggregated statistics. CSV/JSON export support.
Complete event logging, user activity tracking, and moderation tools. Compliance-ready for regulated industries.
Instead of a monolithic database, BZOD securely segments administrative data from tenant analytics and content via dedicated SQLite files operating in WAL mode.
By assigning physical content.db and analytics.db files to each user, cross-user data leakage is eliminated at the file-system level.
By assigning physical `content.db` and `analytics.db` files to each user, cross-user data leakage is eliminated at the file-system level.
The centralized users.db acts as the primary identity database, securely tracking authentication, API tokens, and enforcing resource quotas.
The centralized `system.db` resolves global paths and routes the visitor to the correct tenant's isolated database instantly.
Write-Ahead Logging provides robust concurrency and zero-contention crash recovery without the operational overhead of PostgreSQL.
Write-Ahead Logging provides robust concurrency and zero-contention crash recovery without the overhead of PostgreSQL.
Integrate BZOD with CI/CD pipelines, home automation, or custom applications using secure, token-based authentication.
Full control via a comprehensive command-line interface. Handle migrations, disaster recovery, and user management directly from the terminal.
Unlike standard shorteners, BZOD provides a comprehensive suite of features?from landing pages to multi-tenant user isolation?in a single, compiled binary.
+Unlike standard shorteners, BZOD provides a comprehensive suite of featuresβfrom landing pages to multi-tenant user isolationβin a single, compiled binary.
| Language | -Rust ? | -PHP | -PHP | -Rust | +Rust π¦ | +PHP π | +PHP π | +Rust π¦ |
| Deployment | -? Single Binary | -? Requires PHP/Web Server | -? Requires PHP/Web Server | -? Single Binary | +β Single Binary | +β Requires PHP/Web Server | +β Requires PHP/Web Server | +β Single Binary |
| External DB Required | -? None (SQLite) | -?? Usually (PostgreSQL/Maria) | -?? Usually (MySQL) | -? None | +β None (SQLite) | +β οΈ Usually (PostgreSQL/Maria) | +β οΈ Usually (MySQL) | +β None |
| Landing Pages | -? Native | -? No | -?? Via Plugin | -? No | +β Native | +β No | +β οΈ Via Plugin | +β No |
| QR + Analytics | -? Native | -?? Partial | -?? Via Plugin | -?? Partial | +β Native | +β οΈ Partial | +β οΈ Via Plugin | +β οΈ Partial |
| Multi-User / Quotas | -? Native (Isolated) | -?? Partial | -?? Via Plugin | -? No | +β Native (Isolated) | +β οΈ Partial | +β οΈ Via Plugin | +β No |
| Backup & Recovery | -? Built-in CLI & Web UI | -? External Tools Needed | -? External Tools Needed | -? No | +β Built-in CLI & Web UI | +β External Tools Needed | +β External Tools Needed | +β No |
Deploy via Docker for containerized environments, or compile directly from source for bare-metal performance.