Methodology

How tools on ToolzPedia are built, tested, and maintained

Every tool on ToolzPedia processes files and data locally in your browser. This page explains the technical choices behind that architecture, the specific libraries used for each tool category, the privacy implications, and the testing process tools go through before publication.

Browser-first architecture

ToolzPedia tools use a client-side processing model: the tool logic is loaded as JavaScript or WebAssembly into your browser, and all computation happens on your device. The ToolzPedia server delivers the page, the tool interface, and the tool code. After that, your files never leave your device.

This is verifiable. Open your browser developer tools (F12), switch to the Network tab, and run any file operation. You will see the initial page load, possibly a one-time download of the tool library from a CDN (these are cached after the first visit), and nothing else. No POST request containing your file. No server response containing processed data. Just local computation.

The choice of browser-first over server-side is deliberate and permanent. It is better for user privacy, eliminates server-side costs that would force paywalls or usage limits, and means the tools work offline after the first load.

Libraries and data sources by category

PDF tools (Merge, Split, Compress, Protect, Sign, JPG to PDF, Edit PDF) use pdf-lib, an open-source JavaScript library that implements the PDF 1.7 specification directly in the browser. PDF rendering and text extraction (used in PDF to Word and Extract Images) use PDF.js, the open-source renderer developed and maintained by Mozilla. Word document parsing for Word to PDF uses Mammoth.js. Word document generation for PDF to Word uses the docx library. Multi-file downloads are packaged using JSZip.

Image tools (PNG to WebP, Compress Image, JPG to PNG, Resize Image, WebP to JPG, Shopify Product Image) use the browser's built-in Canvas API and native codec implementations. JPEG, PNG, and WebP encoding are handled by the browser's image encoder via HTMLCanvasElement.toBlob(). No third-party image library is required for these conversions. The Background Removal tool uses the @imgly/background-removal open-source library, which runs an AI semantic segmentation model compiled to WebAssembly. The model file (~80 MB) is downloaded from the imgly CDN on first use and cached in your browser. Your image is never transmitted to any server.

OCR (Image to Text) uses Tesseract.js, a JavaScript port of the open-source Tesseract OCR engine originally developed at HP Labs and later maintained by Google. Tesseract.js compiles the C++ engine to WebAssembly via Emscripten. Language model files (10 to 30 MB per language) are downloaded once and cached.

SEO tools (Keyword Density Checker, Meta Tag Generator, Robots.txt Generator, Sitemap Generator) are self-contained JavaScript utilities. The keyword density checker tokenises text and counts n-grams entirely in the browser with stop-word filtering. The meta tag and robots.txt generators compose their output from form field values. The sitemap generator produces a valid XML sitemap string from a list of URLs you provide. No external dependencies.

Personal tools (MBTI Personality Test) are self-contained JavaScript scoring engines. The MBTI test scores your responses against the four cognitive dichotomies and produces a type result entirely in the browser. No responses are transmitted anywhere. Results are not stored.

Utilities (Password Generator, Word Counter, Case Converter, Percentage Calculator, BMI Calculator, GPA Calculator, QR Code Generator) are self-contained JavaScript modules with no external dependencies. The Password Generator uses the browser's window.crypto.getRandomValues() API for cryptographically random output. The QR Code Generator uses a client-side QR encoding library. All other utilities implement their formulas directly in JavaScript.

Design tools (Color Picker, Gradient Generator) use the browser's built-in colour parsing APIs and the Canvas API for colour sampling. HEX, RGB, HSL, and RGBA conversion is performed by the tool's own JavaScript. CSS gradient output is generated client-side from the selected stops and angle values.

Finance tools (Compound Interest Calculator, Loan Calculator, Mortgage Calculator, Inflation Calculator) implement standard financial formulas in JavaScript. All calculations run entirely in the browser with no server contact. The Currency Converter is the only finance tool that makes an external network request: it fetches live exchange rate data from open.er-api.com on page load. The returned JSON is used for all conversions during your session. Your currency input amounts are never transmitted; only the rate request is sent to the external API. See the Disclaimer for details on what data this request involves.

Science tools (Periodic Table) serve reference data compiled from the International Union of Pure and Applied Chemistry (IUPAC) standard atomic weights and the NIST Chemistry WebBook. All element data is bundled with the tool page and served statically. No external API calls are made.

Testing process

Before a tool page is published, the tool is tested against a minimum of five real-world inputs. For PDF tools, tests include: typical office documents, scanned documents with images, documents with embedded fonts, multi-page documents, and documents at or near size limits. For image tools, tests include photographs, PNG graphics with transparency, low-resolution inputs, and already-compressed inputs. For OCR, tests include clean print at 300 DPI, phone-photo scans, and inputs in each supported language. For finance tools, tests include standard cases, edge cases (zero interest, one payment period, negative real rates for inflation), and boundary inputs.

Edge cases tested across all tools: inputs that are corrupt or malformed, inputs that exceed expected size limits, inputs that are already optimised (to verify that compression does not inflate them), API failure states (for the Currency Converter), and inputs in unusual formats. The tool behaviour on relevant edge cases is documented in the tool page FAQ.

Privacy implementation

The privacy claim (files are processed locally) is implemented at the architecture level, not as a policy. No code path in any ToolzPedia tool sends file contents to a server. The server-side PHP generates the page before any file is selected; after that, all computation is client-side JavaScript or WebAssembly.

The one exception is the Currency Converter, which sends an HTTPS request to open.er-api.com to fetch exchange rates. This request contains no user data: no IP is logged by ToolzPedia, and the request carries no identifiers beyond a standard browser User-Agent header. See the Disclaimer for the full list of external connections made by specific tools.

Analytics: ToolzPedia uses Google Analytics (GA4) for aggregate page-view statistics. No file names, file contents, or operation results are transmitted to Google Analytics.

Advertising: Google AdSense is loaded deferred on user interaction. Ad code does not receive file data.

Tool updates and maintenance

Tools are updated when the underlying libraries release significant versions, when browser APIs change in a way that affects tool behaviour, or when user feedback identifies incorrect behaviour. The "Last reviewed" date at the bottom of each tool page reflects the most recent review date. Library versions are pinned to specific CDN releases so updates are deployed deliberately, not silently.

Contact

To report incorrect behaviour, a bug, or a privacy concern: contact form or mukhtiarwebdev1317@gmail.com.