Production Ready

πŸ•ΉοΈ Control Your URLs. Self-Hosted with πŸ¦€ Rust

BZOD is a complete multi-user URL management platform featuring custom landing pages, analytics, audit logging, and automated disaster recovery. Powered entirely by SQLite.

One-command installer
$ curl -fsSL https://bzo.in/deploy.sh | sudo bash
Rust 2021 Axum SQLite Docker Ready
bzod >_ running
$ git clone https://github.com/thakares/bzod Cloning into 'bzod'... $ cargo build --release Compiling bzod v0.5.0 Finished release [optimized] in 12.58s $ ./target/release/bzod serve [INFO] database="SQLite" multi_user=enabled [INFO] audit_logging=enabled backup=supported [INFO] Listening on 0.0.0.0:3000 $ curl -X POST http://localhost:3000/api/users \ -H "Content-Type: application/json" \ -d '{"username":"admin","password":"secure"}' { "id": 1, "username": "admin", "created_at": "2026-06-19T13:17:28Z" } $ curl -X POST http://localhost:3000/api/short-urls \ -H "Authorization: Bearer TOKEN" \ -d '{"target":"https://example.com","slug":"my-link"}' ? Short URL created: http://localhost:3000/my-link
∞
Short URLs
QR
Generation
Realtime
Analytics
Multi
User Config
Logs
Audit Trail
Backup
& Restore
FOSS
MIT/Apache 2.0 License
Core Features

πŸ› οΈ Everything for professional URL management

Production-grade platform for organizations requiring complete ownership of their links, analytics, and operational data.

πŸ”—
URL Shortening

Create short, memorable URLs with custom slugs. Password protection, expiration dates, and smart preview pages included.

Custom SlugsProtected
πŸ“„
Landing Pages

Host custom landing pages with full analytics tracking. QR code support, custom domains, and rich content editing.

HostedAnalytics
πŸ“Š
Analytics

Comprehensive visitor tracking with browser detection, referrer analysis, daily/monthly statistics, and CSV/JSON export.

Real-timeExport
πŸ¦€
Memory Safe

Built with Rust for zero buffer overflows, use-after-free bugs, or null pointer issues. Complete memory safety at compile time.

Rust 2021Safe
πŸ‘₯
Multi-User

Full user management with quotas, API tokens, session management, and tenant isolation. Role-based access control.

RBACIsolated
πŸ”
Audit Logging

Complete audit trail of all operations. Moderation tools, security events, and compliance-ready logging for enterprises.

ComplianceSecure
πŸ’Ύ
Backup & Restore

Disaster recovery workflows with automated backups. One-command restore. No external dependencies required.

AutomatedRecovery
πŸ—„οΈ
SQLite Backend

Reliable file-based storage with ACID transactions. No PostgreSQL, Redis, or Kubernetes needed. Single binary deployment.

ACIDSQLite
Architecture

πŸ—οΈπŸ“¦ Modular, scalable design

Tenant-isolated multi-user architecture with separate databases for content and analytics. Built on Axum web framework and SQLite.

Web Browser
↓ HTTP/REST
Axum Server
↓ Auth Β· Routing
Request Type?
URL Mgmt
Content DB
Analytics
Analytics DB
↓ Query
Tenant Data
↑ Results
Audit Log?
Yes ↓
System DB (Audit)
↓ Response
Browser
01
Axum Web Server

High-performance async HTTP server. Handles routing, middleware, authentication, and request validation. Graceful shutdown and error handling.

02
Multi-Tenant Storage

Isolated databases per user. System DB for global state, users DB for accounts/sessions, tenant DBs for content and analytics.

03
Analytics Engine

Real-time visitor tracking with browser detection, referrer analysis, and aggregated statistics. CSV/JSON export support.

04
Audit & Moderation

Complete event logging, user activity tracking, and moderation tools. Compliance-ready for regulated industries.

Storage Architecture

πŸ‘₯ Strict Tenant Isolation

Instead of a monolithic database, BZOD securely segments administrative data from tenant analytics and content via dedicated SQLite files operating in WAL mode.

data/
β”œβ”€β”€ admin/ # Global Metadata
β”‚ β”œβ”€β”€ admin.db # Internal management
β”‚ β”œβ”€β”€ system.db # Global slugs & audit logs
β”‚ └── users.db # Auth, sessions, quotas
β”‚
└── users/ # Tenant Isolation
    β”œβ”€β”€ 1/ # User 1
    β”‚ β”œβ”€β”€ analytics.db # Isolated metrics
    β”‚ └── content.db # Isolated URLs/Pages
    β”‚
    β””── 2/ # User 2
        β”œβ”€β”€ analytics.db
        β””── content.db
1
No Cross-Tenant Bleed

By assigning physical `content.db` and `analytics.db` files to each user, cross-user data leakage is eliminated at the file-system level.

2
Global Slug Registry

The centralized `system.db` resolves global paths and routes the visitor to the correct tenant's isolated database instantly.

3
WAL Concurrency

Write-Ahead Logging provides robust concurrency and zero-contention crash recovery without the overhead of PostgreSQL.

REST API

πŸ”‘πŸ’» Programmatic Access

Integrate BZOD with CI/CD pipelines, home automation, or custom applications using secure, token-based authentication.

Create a Short URL

POST /api/v1/urls
Authorization: Bearer bzo_xxxxxxxxxxxx

{
  "code": "rust",
  "target_url": "https://www.rust-lang.org",
  "description": "Rust Language"
}

Fetch Global Statistics

GET /api/v1/stats
Authorization: Bearer bzo_xxxxxxxxxxxx

{
  "success": true,
  "data": {
    "total_urls": 125,
    "total_clicks": 8431,
    "total_pages": 12
  }
}
Operations & CLI

πŸ§‘β€πŸ’»βš™οΈπŸ”§ Built for Systems Administrators

Full control via a comprehensive command-line interface. Handle migrations, disaster recovery, and user management directly from the terminal.

# Create a full compressed snapshot of the entire platform
bzod backup

# Restore platform from a specific archive
bzod restore backup-20260619-020000.zip

# Backup and export only a single tenant's data
bzod backup-user 42
# Bootstrap a new administrator
bzod create-admin admin

# Provision a new standard user
bzod create-user alice

# Immediately invalidate user sessions and prevent login
bzod disable-user alice
# Run SQLite integrity checks, WAL validation, and storage checks
bzod doctor

# Verify all registered short link destinations exist
bzod validate

# Apply schema upgrades safely
bzod migrate
Market Comparison

βš–οΈ How BZOD Compares

Unlike standard shorteners, BZOD provides a comprehensive suite of featuresβ€”from landing pages to multi-tenant user isolationβ€”in a single, compiled binary.

Feature BZOD v0.5.0 Shlink YOURLS Chhoto URL
Language Rust πŸ¦€ PHP 🐘 PHP 🐘 Rust πŸ¦€
Deployment βœ… Single Binary ❌ Requires PHP/Web Server ❌ Requires PHP/Web Server βœ… Single Binary
External DB Required βœ… None (SQLite) ⚠️ Usually (PostgreSQL/Maria) ⚠️ Usually (MySQL) βœ… None
Landing Pages βœ… Native ❌ No ⚠️ Via Plugin ❌ No
QR + Analytics βœ… Native ⚠️ Partial ⚠️ Via Plugin ⚠️ Partial
Multi-User / Quotas βœ… Native (Isolated) ⚠️ Partial ⚠️ Via Plugin ❌ No
Backup & Recovery βœ… Built-in CLI & Web UI ❌ External Tools Needed ❌ External Tools Needed ❌ No
Deployment

πŸš€ Get Started in Minutes

Deploy via Docker for containerized environments, or compile directly from source for bare-metal performance.

# Clone the official repository
git clone https://github.com/thakares/nx9-url-shortener bzod
cd bzod

# Launch containerized services
docker compose up -d --build

# Initialize base admin
docker exec -it bzod bzod create-admin
# Clone the official repository
git clone https://github.com/thakares/nx9-url-shortener bzod
cd bzod

# Compile optimized release
cargo build --release

# Initialize base admin
./target/release/bzod create-admin

# Serve application
./target/release/bzod serve