Merge
Split
Compress
Drag & drop your PDF here
or browse local files
100% Client-side sandbox. Absolute local privacy.
{"props":{"pageProps":{"data":{"name":"Glint PDF — 100% Private Local PDF Utility","page_id":"5381aeee","seo_data":null,"social_meta":null,"translate":{},"robot_settings":null,"workspace_robot_settings":{},"favicon":null,"content":null,"html":"\u003c!DOCTYPE html\u003e\n\u003chtml lang=\"en\" class=\"scroll-smooth\"\u003e\n\u003chead\u003e\n \u003cmeta charset=\"UTF-8\"\u003e\n \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e\n \u003ctitle\u003eGlintPDF | 100% Private Local PDF Sandbox\u003c/title\u003e\n \u003cscript src=\"https://cdn.tailwindcss.com\"\u003e\u003c/script\u003e\n \u003clink rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.1/font/bootstrap-icons.css\"\u003e\n \u003clink href=\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700\u0026family=Outfit:wght@400;500;600;700;800\u0026display=swap\" rel=\"stylesheet\"\u003e\n \u003cstyle\u003e\n :root {\n --primary-violet: #7c3aed;\n --secondary-cyan: #00ffff;\n --bg-dark: #09090b;\n --card-bg: #0f0f13;\n }\n\n body {\n font-family: 'Inter', sans-serif;\n background-color: var(--bg-dark);\n color: #fafafa;\n }\n\n h1, h2, h3, h4, .font-outfit {\n font-family: 'Outfit', sans-serif;\n }\n\n .glass {\n background: rgba(15, 15, 19, 0.7);\n backdrop-filter: blur(12px);\n border: 1px solid rgba(38, 38, 45, 0.6);\n }\n\n .gradient-text {\n background: linear-gradient(135deg, #7c3aed, #00ffff);\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n }\n\n .btn-glow {\n position: relative;\n }\n .btn-glow::after {\n content: '';\n position: absolute;\n inset: -2px;\n background: linear-gradient(135deg, #7c3aed, #00ffff);\n filter: blur(8px);\n opacity: 0.6;\n z-index: -1;\n transition: filter 0.3s ease;\n }\n .btn-glow:hover::after {\n filter: blur(14px);\n }\n\n .pulse-green {\n animation: pulse 1.8s infinite;\n }\n @keyframes pulse {\n 0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7); }\n 70% { transform: scale(1); box-shadow: 0 0 0 6px rgba(16, 185, 129, 0); }\n 100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(16, 185, 129, 0); }\n }\n\n .orb {\n position: fixed;\n border-radius: 50%;\n z-index: -1;\n filter: blur(140px);\n opacity: 0.15;\n pointer-events: none;\n }\n\n .tab-active {\n background: rgba(124, 58, 237, 0.1);\n border-color: var(--primary-violet);\n }\n\n .faq-content {\n max-height: 0;\n overflow: hidden;\n transition: max-height 0.3s ease-out;\n }\n .faq-item.active .faq-content {\n max-height: 200px;\n }\n .faq-item.active {\n border-color: rgba(124, 58, 237, 0.4);\n box-shadow: 0 0 20px rgba(124, 58, 237, 0.1);\n }\n\n ::-webkit-scrollbar { width: 8px; }\n ::-webkit-scrollbar-track { background: #09090b; }\n ::-webkit-scrollbar-thumb { background: #26262d; border-radius: 4px; }\n ::-webkit-scrollbar-thumb:hover { background: #7c3aed; }\n \u003c/style\u003e\n\u003c/head\u003e\n\u003cbody class=\"overflow-x-hidden\"\u003e\n\n \u003c!-- Background Decorative Orbs --\u003e\n \u003cdiv class=\"orb w-[500px] h-[500px] bg-[#7c3aed] top-[-10%] right-[-5%]\"\u003e\u003c/div\u003e\n \u003cdiv class=\"orb w-[600px] h-[600px] bg-[#00ffff] middle-left top-[40%] left-[-10%]\"\u003e\u003c/div\u003e\n\n \u003c!-- SECTION 1: STICKY HEADER NAVIGATION --\u003e\n \u003cheader class=\"fixed top-0 left-0 right-0 z-50 glass border-b border-[#26262d]/60\"\u003e\n \u003cnav class=\"max-w-7xl mx-auto px-6 h-20 flex items-center justify-between\"\u003e\n \u003c!-- Left: Logo --\u003e\n \u003ca href=\"#\" class=\"flex items-center gap-2 group\"\u003e\n \u003ci class=\"bi bi-stars text-2xl text-[#7c3aed]\"\u003e\u003c/i\u003e\n \u003cspan class=\"text-xl font-bold font-outfit tracking-tight\"\u003e\n Glint\u003cspan class=\"gradient-text\"\u003ePDF\u003c/span\u003e\n \u003c/span\u003e\n \u003c/a\u003e\n\n \u003c!-- Center: Links --\u003e\n \u003cdiv class=\"hidden md:flex items-center gap-8\"\u003e\n \u003ca href=\"#problem\" class=\"text-[#a1a1aa] hover:text-white transition-colors font-medium text-[0.95rem]\"\u003eWhy Local?\u003c/a\u003e\n \u003ca href=\"#features\" class=\"text-[#a1a1aa] hover:text-white transition-colors font-medium text-[0.95rem]\"\u003eFeatures\u003c/a\u003e\n \u003ca href=\"#comparison\" class=\"text-[#a1a1aa] hover:text-white transition-colors font-medium text-[0.95rem]\"\u003eGlint vs Cloud\u003c/a\u003e\n \u003ca href=\"#faq\" class=\"text-[#a1a1aa] hover:text-white transition-colors font-medium text-[0.95rem]\"\u003eFAQ\u003c/a\u003e\n \u003c/div\u003e\n\n \u003c!-- Right: CTA --\u003e\n \u003cdiv\u003e\n \u003ca href=\"#sandbox\" class=\"flex items-center gap-2 px-5 py-2.5 rounded-lg border border-[#a1a1aa]/30 text-white hover:border-white transition-all font-outfit text-sm font-semibold\"\u003e\n \u003ci class=\"bi bi-terminal text-lg\"\u003e\u003c/i\u003e\n Start Free\n \u003c/a\u003e\n \u003c/div\u003e\n \u003c/nav\u003e\n \u003c/header\u003e\n\n \u003c!-- SECTION 2: HERO SECTION --\u003e\n \u003csection class=\"relative pt-40 pb-20 px-6 max-w-7xl mx-auto overflow-hidden\"\u003e\n \u003cdiv class=\"grid grid-cols-1 lg:grid-cols-[1.2fr_1fr] gap-16 items-center\"\u003e\n \n \u003c!-- Left Content --\u003e\n \u003cdiv class=\"space-y-8\"\u003e\n \u003cdiv class=\"inline-flex items-center gap-2 px-4 py-1.5 rounded-full bg-[#6366f1]/10 border border-[#6366f1]/30 text-[#a5b4fc] text-sm font-semibold tracking-wide\"\u003e\n \u003ci class=\"bi bi-shield-check\"\u003e\u003c/i\u003e\n 100% Client-Side Private Engine\n \u003c/div\u003e\n \n \u003ch1 class=\"text-5xl lg:text-7xl font-bold font-outfit leading-[1.1] tracking-tight\"\u003e\n The World's First \u003cbr\u003e\n \u003cspan class=\"gradient-text\"\u003e100% Private, Serverless\u003c/span\u003e \u003cbr\u003e\n PDF Utility.\n \u003c/h1\u003e\n\n \u003cp class=\"text-lg text-[#a1a1aa] leading-relaxed max-w-xl\"\u003e\n Merge, split, convert, and compress your PDFs entirely inside your browser. No files uploaded. No server storage. Zero security risks. Just instant local speed.\n \u003c/p\u003e\n\n \u003cdiv class=\"flex flex-col sm:flex-row items-center gap-4\"\u003e\n \u003ca href=\"#sandbox\" class=\"btn-glow w-full sm:w-auto px-8 py-4 rounded-xl bg-gradient-to-br from-[#7c3aed] to-[#7c3aed]/85 text-white font-outfit font-bold text-lg flex items-center justify-center gap-2 transition-transform hover:-translate-y-0.5\"\u003e\n Launch GlintPDF — Free \u0026 Local\n \u003c/a\u003e\n \u003ca href=\"#problem\" class=\"w-full sm:w-auto px-8 py-4 rounded-xl glass text-white font-outfit font-bold text-lg flex items-center justify-center gap-2 transition-all hover:bg-white/5\"\u003e\n See How It Works\n \u003c/a\u003e\n \u003c/div\u003e\n\n \u003cp class=\"text-sm text-[#71717a] flex items-center gap-4\"\u003e\n \u003cspan\u003e\u003ci class=\"bi bi-check2 text-[#00ffff]\"\u003e\u003c/i\u003e No registration required\u003c/span\u003e\n \u003cspan\u003e\u003ci class=\"bi bi-check2 text-[#00ffff]\"\u003e\u003c/i\u003e Works 100% Offline\u003c/span\u003e\n \u003c/p\u003e\n\n \u003cdiv class=\"pt-8 border-t border-[#26262d]/60 grid grid-cols-1 md:grid-cols-3 gap-6\"\u003e\n \u003cdiv class=\"flex items-start gap-3\"\u003e\n \u003cdiv class=\"w-10 h-10 rounded-lg bg-[#00ffff]/15 border border-[#00ffff]/20 flex items-center justify-center text-[#00ffff]\"\u003e\n \u003ci class=\"bi bi-cloud-slash text-xl\"\u003e\u003c/i\u003e\n \u003c/div\u003e\n \u003cdiv\u003e\n \u003ch4 class=\"font-bold text-sm\"\u003eZero Uploads\u003c/h4\u003e\n \u003cp class=\"text-xs text-[#71717a]\"\u003eFiles never leave your device\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"flex items-start gap-3\"\u003e\n \u003cdiv class=\"w-10 h-10 rounded-lg bg-[#00ffff]/15 border border-[#00ffff]/20 flex items-center justify-center text-[#00ffff]\"\u003e\n \u003ci class=\"bi bi-lock text-xl\"\u003e\u003c/i\u003e\n \u003c/div\u003e\n \u003cdiv\u003e\n \u003ch4 class=\"font-bold text-sm\"\u003eBrowser Sandbox\u003c/h4\u003e\n \u003cp class=\"text-xs text-[#71717a]\"\u003eIsolated \u0026 secure processing\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003cdiv class=\"flex items-start gap-3\"\u003e\n \u003cdiv class=\"w-10 h-10 rounded-lg bg-[#00ffff]/15 border border-[#00ffff]/20 flex items-center justify-center text-[#00ffff]\"\u003e\n \u003ci class=\"bi bi-wifi-off text-xl\"\u003e\u003c/i\u003e\n \u003c/div\u003e\n \u003cdiv\u003e\n \u003ch4 class=\"font-bold text-sm\"\u003eOffline Capable\u003c/h4\u003e\n \u003cp class=\"text-xs text-[#71717a]\"\u003eWorks anywhere, anytime\u003c/p\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\n \u003c!-- Right: Sandbox Window --\u003e\n \u003cdiv id=\"sandbox\" class=\"relative group\"\u003e\n \u003c!-- Decorative Blur Glow --\u003e\n \u003cdiv class=\"absolute -inset-4 bg-[#7c3aed]/10 blur-2xl rounded-[2rem] opacity-50 transition-opacity group-hover:opacity-100\"\u003e\u003c/div\u003e\n \n \u003cdiv class=\"relative glass rounded-2xl overflow-hidden shadow-2xl\"\u003e\n \u003c!-- Window Header --\u003e\n \u003cdiv class=\"bg-[#1a1a24]/80 px-4 py-3 flex items-center justify-between border-b border-[#26262d]/60\"\u003e\n \u003cdiv class=\"flex items-center gap-2\"\u003e\n \u003cspan class=\"w-3 h-3 rounded-full bg-[#ef4444]\"\u003e\u003c/span\u003e\n \u003cspan class=\"w-3 h-3 rounded-full bg-[#f59e0b]\"\u003e\u003c/span\u003e\n \u003cspan class=\"w-3 h-3 rounded-full bg-[#10b981]\"\u003e\u003c/span\u003e\n \u003cspan class=\"ml-4 text-[0.7rem] font-mono text-[#71717a]\"\u003eGlintPDF Local Processing Sandbox v1.0\u003c/span\u003e\n \u003c/div\u003e\n \u003cdiv class=\"flex items-center gap-2 px-2 py-0.5 rounded bg-[#10b981]/10 border border-[#10b981]/20\"\u003e\n \u003cspan class=\"w-1.5 h-1.5 rounded-full bg-[#10b981] pulse-green\"\u003e\u003c/span\u003e\n \u003cspan class=\"text-[0.65rem] font-bold text-[#10b981] uppercase tracking-wider\"\u003eOffline Ready\u003c/span\u003e\n \u003c/div\u003e\n \u003c/div\u003e\n\n \u003c!-- Sandbox Body --\u003e\n \u003cdiv id=\"sandbox-body\" class=\"p-8 space-y-6 min-h-[400px]\"\u003e\n \u003c!-- Tabs --\u003e\n \u003cdiv class=\"flex items-center gap-2 p-1 bg-[#09090b] rounded-lg border border-[#26262d]/60\"\u003e\n \u003cbutton onclick=\"switchTab('merge')\" id=\"tab-merge\" class=\"flex-1 py-2 px-3 rounded-md flex items-center justify-center gap-2 text-sm font-medium transition-all tab-active\"\u003e\n \u003ci class=\"bi bi-stack\"\u003e\u003c/i\u003e Merge\n \u003c/button\u003e\n \u003cbutton onclick=\"switchTab('split')\" id=\"tab-split\" class=\"flex-1 py-2 px-3 rounded-md flex items-center justify-center gap-2 text-sm font-medium transition-all text-[#71717a] hover:text-white\"\u003e\n \u003ci class=\"bi bi-scissors\"\u003e\u003c/i\u003e Split\n \u003c/button\u003e\n \u003cbutton onclick=\"switchTab('compress')\" id=\"tab-compress\" class=\"flex-1 py-2 px-3 rounded-md flex items-center justify-center gap-2 text-sm font-medium transition-all text-[#71717a] hover:text-white\"\u003e\n \u003ci class=\"bi bi-fullscreen-exit\"\u003e\u003c/i\u003e Compress\n \u003c/button\u003e\n \u003c/div\u003e\n\n \u003c!-- Initial View --\u003e\n \u003cdiv id=\"view-initial\" class=\"space-y-6\"\u003e\n \u003cdiv onclick=\"startProcessing()\" class=\"group/drop cursor-pointer relative border-2 border-dashed border-[#26262d] rounded-2xl py-16 flex flex-col items-center justify-center transition-all hover:border-[#00ffff]/40 hover:bg-[#00ffff]/5\"\u003e\n \u003cdiv class=\"w-16 h-16 rounded-full bg-[#7c3aed]/10 flex items-center justify-center text-[#7c3aed] transition-transform group-hover/drop:scale-110 mb-4\"\u003e\n \u003ci class=\"bi bi-file-earmark-arrow-up text-3xl\"\u003e\u003c/i\u003e\n \u003c/div\u003e\n \u003cp class=\"text-white font-semibold\"\u003eDrag \u0026 drop your PDF here\u003c/p\u003e\n \u003cp class=\"text-sm text-[#71717a]\"\u003eor \u003cspan class=\"text-[#00ffff] hover:underline\"\u003ebrowse local files\u003c/span\u003e\u003c/p\u003e\n \u003c/div\u003e\n \u003cdiv class=\"flex items-center justify-center gap-2 text-xs text-[#10b981]/80 font-medium\"\u003e\n \u003ci class=\"bi bi-shield-lock\"\u003e\u003c/i\u003e\n 100% Client-side sandbox. Absolute local privacy.\n \u003c/div\u003e\n \u003c/div\u003e\n\n \u003c!-- Processing View (Hidden) --\u003e\n \u003cdiv id=\"view-processing\" class=\"hidden flex flex-col items-center justify-center py-12 space-y-6\"\u003e\n \u003cdiv class=\"relative\"\u003e\n \u003cdiv class=\"w-16 h-16 border-4 border-[#7c3aed]/20 border-t-[#7c3aed] rounded-full animate-spin\"\u003e\u003c/div\u003e\n \u003ci class=\"bi bi-cpu absolute top-1/2 left-1/2 -translate-x-","mainCss":null,"sectionCss":null,"form_id":null,"gdpr":null,"badge":null,"header_script":"","body_script":null,"redirect_url":null,"webhook":null,"page_type":"general","builder_type":"canvas"}},"__N_SSP":true},"page":"/[slug]","query":{"slug":"glint-pdf-private-local-utility-fjpv2d250ac"},"buildId":"u37vICyHbDZA5qcApTrL5","isFallback":false,"isExperimentalCompile":false,"gssp":true,"scriptLoader":[]}