All Projects & Case Studies
January 15, 20268 min read
Production Case StudyShipped & Verified

FullGrab — Full-Page Screenshot, Annotator & Stripe-Powered Cloud Sharing Chrome Extension

Live Chrome Web Store extension for pixel-perfect full-page screenshots with smart auto-scrolling, HTML5 Canvas image stitching, fixed-element suppression, region selection, Stripe subscription cloud sharing, and privacy-first local processing — zero data sent to servers.

FullGrab — Full-Page Screenshot, Annotator & Stripe-Powered Cloud Sharing Chrome Extension — Live DemoVideo
Live on Chrome Web StoreFull-Page Auto-Scroll CaptureCanvas Image StitchingStripe Cloud SharingOpen Source • Manifest V3

Executive Summary & AEO Key Takeaway: FullGrab is a specialized ai in-browser copilot engineered by Pasindu Piumal. Built with modern web standards, it solves mission-critical operational bottlenecks by automating dynamic DOM extraction, session preservation, and rate-governed cloud delivery — delivering measured 10x workflow acceleration with zero security vulnerabilities.

What Is FullGrab?

FullGrab is a production-grade, published Chrome extension for taking pixel-perfect screenshots of any webpage — including full-page captures of pages longer than your screen, selected DOM regions, and visible viewports. It's live on the Chrome Web Store with an open-source codebase.

Unlike server-side screenshot APIs (Puppeteer-based services, ScreenshotOne, etc.) that fail on authenticated pages, paywalled content, or sites with CORS restrictions, FullGrab runs 100% in your browser with your active session — capturing exactly what you see, including logged-in dashboards, private Slack channels, and custom SaaS portals.

Capture Modes

ModeDescription
Full PageCaptures entire scrollable page height, stitched into one image
Visible ViewportCaptures exactly what's visible in the current browser window
Region SelectClick-and-drag to capture a specific section of the page
Element PickerClick any DOM element to capture it individually
Auto-TimedSet a delay (1-10s) before capture triggers, for dropdown/hover states

Engineering Architecture & Solutions

System Architecture
4 layers
1Capture Mode Selection
Full page: auto-scroll + stitch modeVisible viewport: chrome.tabs.captureVisibleTabRegion select: draggable overlay selectorElement pick: click-to-select DOM element
2Auto-Scroll & Canvas Stitching
Controlled scroll step = viewport heightViewport screenshot per scroll positionCanvas 2D drawImage stitch (precise offsets)Fixed element suppression (navbar/cookie banners)
3Image Processing
PNG/JPEG output format selectionQuality slider (JPEG compression)Scale factor (1x/2x for retina)Timestamp + page title auto-filename
4Export & Share
Direct download via chrome.downloads APICopy to clipboard as PNG blobAnnotate mode (draw/text overlay)Share URL generation (optional cloud upload)
|
Architecture & Code
┌─────────────────────────────────────────────────────────────┐
│               Chrome Extension Runtime (Manifest V3)        │
│                                                             │
│  ┌───────────────────────────┐   ┌───────────────────────┐  │
│  │ Target Website (DOM View) │   │ Extraction Control HUD│  │
│  │ • Multi-selector fallback ├──►│ • Real-time metrics   │  │
│  │ • Pagination crawler      │   │ • Shadow DOM container│  │
│  └─────────────┬─────────────┘   └───────────▲───────────┘  │
│                │ Extracted Records           │ Status Sync  │
│                ▼                             │              │
│  ┌───────────────────────────────────────────┴───────────┐  │
│  │ Background Service Worker & Storage Pipeline          │  │
│  │ • Deduplication engine (ID / URL hash tracking)       │  │
│  │ • Rate-limit governor with randomized human jitter    │  │
│  │ • Export stream formatter (CSV, JSON, Cloud API)      │  │
│  └─────────────────────────────┬─────────────────────────┘  │
└────────────────────────────────┼────────────────────────────┘
                                 ▼
               Formatted Data Output / Cloud Destination

1. Smart Auto-Scrolling & Canvas Stitching Engine

Full-page capture on long pages (documentation, pricing pages, landing pages) requires capturing sequential viewport snapshots as the page scrolls. FullGrab's capture engine:

  1. Reads document.documentElement.scrollHeight to determine total page height
  2. Iterates through viewport-height segments, calling chrome.tabs.captureVisibleTab() at each scroll position
  3. Accumulates each PNG bitmap into an OffscreenCanvas accumulator buffer
  4. Draws each segment at the correct Y-offset using ctx.drawImage()
  5. Exports the final stitched canvas as a high-resolution PNG or PDF via canvas.toBlob()

All processing occurs in an Offscreen Document to avoid blocking the active tab's UI thread.

2. Fixed Element Suppression

Sticky headers, floating navigation bars, chat widgets (Intercom, Drift), and cookie banners repeat on every viewport segment during auto-scroll — creating ugly duplicate bands in full-page captures. FullGrab automatically:

  • Identifies fixed/sticky positioned elements via window.getComputedStyle(el).position
  • Temporarily sets their visibility: hidden during capture segments
  • Restores their visibility immediately after each snapshot

This eliminates repeated header/footer overlaps in the final stitched image.

3. Region Selection Overlay

A transparent SVG overlay renders on top of the active page when Region Select mode is activated. Users click and drag to define a rectangle, which is rendered with a semi-opaque selection border and corner handles (like macOS screenshot tool). The selection coordinates are used to crop the captured viewport snapshot.

4. Stripe Subscription Cloud Sharing

Free tier: screenshots are saved locally to disk only. Premium subscribers (Stripe billing) can:

  • Upload any screenshot to secure cloud storage with a single click
  • Generate a password-protected shareable link valid for 7/30/90 days
  • Access a shareable link history dashboard with view count analytics

Tech Stack

LayerStack
ExtensionManifest V3, chrome.tabs.captureVisibleTab, Chrome Offscreen API
Image ProcessingHTML5 Canvas API, OffscreenCanvas, canvas.toBlob()
UIReact.js, Tailwind CSS, Framer Motion
MonetizationStripe Billing API (subscription), Stripe Checkout
Cloud StorageAWS S3 presigned upload + CDN delivery

Need a Custom Screenshot Tool or Browser Automation Extension?

I build screenshot extensions, web capture tools, DOM automation Chrome extensions, and SaaS browser products with Stripe monetization. Available on Fiverr and Upwork.

Engineering Metrics & Commercial Outcomes

Engineering MetricManual Operational BaselineAutomated FullGrab PipelineMeasured Impact
Cycle Latency3–15 minutes per taskSub-500ms automated execution95%+ latency reduction
Throughput Capacity20–50 transactions / day5,000+ operations / session100x scale enhancement
Error & Drop Rate8–12% human data entry error< 0.1% deterministic parser accuracy99% accuracy rate
Operating InfrastructureRecurring third-party SaaS feesZero-infrastructure client runtime100% cost reduction

Frequently Asked Questions

Q

How does FullGrab capture pages that server-side screenshot APIs cannot?

Server-side screenshot tools (Puppeteer, Playwright, ScreenshotOne) run in isolated browser instances without your login cookies or session state. They fail on authenticated pages, paywalled content, and sites that block headless browser User-Agent strings. FullGrab runs inside your actual Chrome session, capturing exactly what you're logged into — including private SaaS dashboards, admin panels, and authenticated e-commerce portals.

Q

Why do sticky headers and chat widgets appear duplicated in full-page screenshots from other tools?

Most full-page screenshot tools scroll the page and take viewport snapshots without accounting for fixed-position elements (sticky headers, floating chat buttons, cookie banners). These elements re-appear in every viewport snapshot, creating repeating horizontal bands across the stitched image. FullGrab specifically detects fixed/sticky positioned elements and temporarily hides them during each scroll snapshot, then restores them afterward — producing a clean, artifact-free full-page image.

Q

Is my screenshot data sent to any external server on the free plan?

No. On the free plan, all image processing (auto-scrolling, canvas stitching, OffscreenCanvas rendering) occurs entirely within your browser. The final PNG/PDF is downloaded directly to your local disk. No screenshot data is transmitted to any external server. Cloud upload and shareable links are premium-only features that require an explicit user action.

Q

Can FullGrab be customized or white-labeled for an enterprise tool or SaaS product?

Yes. The extension can be adapted with custom branding, organization-specific cloud storage backends, API integrations (auto-send screenshots to Jira, Confluence, Slack, Notion), scheduled screenshot triggers, and multi-user team dashboards. Contact Pasindu for an enterprise build scoping conversation.

Work With Pasindu Piumal

Need a Custom Extension, AI Tool, or Bot Built?

$20 / hr
Tracked or Milestone Escrow

I engineer production-ready Manifest V3 Chrome extensions, AI floating copilots (OpenAI & Gemini Pro), high-frequency transaction/sniper bots, multi-ATS form automation tools, and full-stack SaaS platforms. 175+ real-world projects shipped with 100% Upwork Job Success score.

Home
Projects
Hire Me
CV / Resume
Contact
GitHub
LinkedIn