{"name":"ORDO","description":"Local-first tools to edit, redact, extract and convert PDFs, images, spreadsheets and data. Files stay on your device. Extraction shows why it chose each value and leaves a field blank rather than guess.","category":"Document utility and PDF editor (web application)","status":"public-beta","url":"https://ordo.ordo-th.workers.dev/","languages":["en","th"],"defaultLanguage":"en","pricing":{"model":"free","price":0,"currency":"USD","accountRequired":false,"note":"Free during the public beta, with no sign-up."},"privacy":{"processing":"In the user's browser. Files are not uploaded.","filesUploaded":false,"analytics":"Anonymous usage statistics from a closed vocabulary; never file content or file names. Nothing is sent when the browser sends Global Privacy Control.","policy":"https://ordo.ordo-th.workers.dev/en/privacy"},"tools":[{"id":"edit-pdf","name":"Edit PDF","group":"PDF","description":"Change text that's already in a PDF, add your own text, pictures and a signature, redact for good and reorder pages — locally in your browser. Free, no sign-up.","features":["Edit text already in the PDF","Add text to document layouts","Pictures and signatures","Shapes, highlight and colour","Cover (whiteout)","Redact","Pages","Rotate objects"],"processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/edit-pdf","en":"https://ordo.ordo-th.workers.dev/en/edit-pdf"}},{"id":"smart-extract","name":"Smart Extract","group":"Data","description":"Extract fields from supported digital invoices, inspect their source and review uncertainty before CSV or Excel export. Processing stays on your device.","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/smart-extract","en":"https://ordo.ordo-th.workers.dev/en/smart-extract"}},{"id":"merge-pdf","name":"Merge PDF","group":"PDF","description":"Combine PDFs and images into one PDF, in the order you choose.","input":"PDF+PDF","output":"PDF","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/merge-pdf","en":"https://ordo.ordo-th.workers.dev/en/merge-pdf"}},{"id":"split-pdf","name":"Split PDF","group":"PDF","description":"Split a PDF into single pages, by ranges, or into odd and even pages.","input":"PDF","output":"PDF ×n","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/split-pdf","en":"https://ordo.ordo-th.workers.dev/en/split-pdf"}},{"id":"extract-pdf-pages","name":"Extract PDF pages","group":"PDF","description":"Pull selected pages out of a PDF into a new PDF.","input":"PDF","output":"PDF","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/extract-pdf-pages","en":"https://ordo.ordo-th.workers.dev/en/extract-pdf-pages"}},{"id":"rotate-pdf","name":"Rotate PDF","group":"PDF","description":"Rotate all or selected PDF pages by 90° or 180° without losing quality.","input":"PDF","output":"PDF","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/rotate-pdf","en":"https://ordo.ordo-th.workers.dev/en/rotate-pdf"}},{"id":"number-pdf-pages","name":"Add page numbers","group":"PDF","description":"Write a page number on each page, as real text, without turning the page into an image.","input":"PDF","output":"PDF","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/number-pdf-pages","en":"https://ordo.ordo-th.workers.dev/en/number-pdf-pages"}},{"id":"watermark-pdf","name":"Watermark PDF","group":"PDF","description":"Stamp text onto the pages, with supported text, without deleting what is underneath.","input":"PDF","output":"PDF","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/watermark-pdf","en":"https://ordo.ordo-th.workers.dev/en/watermark-pdf"}},{"id":"pdf-info","name":"PDF info","group":"PDF","description":"Read the page count, page size and document info (title, author and similar) into a text file.","input":"PDF","output":"TXT","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/pdf-info","en":"https://ordo.ordo-th.workers.dev/en/pdf-info"}},{"id":"remove-pdf-info","name":"Remove PDF info","group":"PDF","description":"Clear the title, author, subject, keywords and creator. Page content stays.","input":"PDF","output":"PDF","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/remove-pdf-info","en":"https://ordo.ordo-th.workers.dev/en/remove-pdf-info"}},{"id":"pdf-to-jpg","name":"PDF to JPG","group":"PDF","description":"Convert PDF pages to JPG images at 72, 150 or 300 DPI.","input":"PDF","output":"JPG","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/pdf-to-jpg","en":"https://ordo.ordo-th.workers.dev/en/pdf-to-jpg"}},{"id":"pdf-to-png","name":"PDF to PNG","group":"PDF","description":"Render PDF pages as lossless PNG images.","input":"PDF","output":"PNG","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/pdf-to-png","en":"https://ordo.ordo-th.workers.dev/en/pdf-to-png"}},{"id":"pdf-to-text","name":"PDF to text","group":"PDF","description":"Extract supported PDF text while keeping lines and columns apart. Uncertain characters are marked instead of guessed.","input":"PDF","output":"TXT","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/pdf-to-text","en":"https://ordo.ordo-th.workers.dev/en/pdf-to-text"}},{"id":"jpg-to-pdf","name":"JPG to PDF","group":"Images","description":"Turn JPG, PNG and WebP images into one PDF, or one PDF per image.","input":"JPG","output":"PDF","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/jpg-to-pdf","en":"https://ordo.ordo-th.workers.dev/en/jpg-to-pdf"}},{"id":"png-to-jpg","name":"PNG to JPG","group":"Images","description":"Convert PNG, WebP and other images to JPG with adjustable quality.","input":"PNG","output":"JPG","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/png-to-jpg","en":"https://ordo.ordo-th.workers.dev/en/png-to-jpg"}},{"id":"jpg-to-png","name":"JPG to PNG","group":"Images","description":"Convert JPG and WebP images to lossless PNG.","input":"JPG","output":"PNG","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/jpg-to-png","en":"https://ordo.ordo-th.workers.dev/en/jpg-to-png"}},{"id":"webp-to-jpg","name":"WebP to JPG","group":"Images","description":"Convert WebP images to widely compatible JPG files.","input":"WebP","output":"JPG","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/webp-to-jpg","en":"https://ordo.ordo-th.workers.dev/en/webp-to-jpg"}},{"id":"csv-to-excel","name":"CSV to Excel","group":"Data","description":"Convert CSV to XLSX while preserving leading zeros, long IDs and readable text.","input":"CSV","output":"Excel","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/csv-to-excel","en":"https://ordo.ordo-th.workers.dev/en/csv-to-excel"}},{"id":"excel-to-csv","name":"Excel to CSV","group":"Data","description":"Export XLSX, XLS or ODS sheets to CSV that opens correctly in Excel, with readable text.","input":"Excel","output":"CSV","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/excel-to-csv","en":"https://ordo.ordo-th.workers.dev/en/excel-to-csv"}},{"id":"csv-to-json","name":"CSV to JSON","group":"Data","description":"Convert CSV rows to JSON objects keyed by the header row.","input":"CSV","output":"JSON","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/csv-to-json","en":"https://ordo.ordo-th.workers.dev/en/csv-to-json"}},{"id":"json-to-csv","name":"JSON to CSV","group":"Data","description":"Flatten JSON records into a CSV table, with nested fields as dotted columns.","input":"JSON","output":"CSV","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/json-to-csv","en":"https://ordo.ordo-th.workers.dev/en/json-to-csv"}},{"id":"json-to-excel","name":"JSON to Excel","group":"Data","description":"Convert JSON arrays to an XLSX spreadsheet, flattening nested fields.","input":"JSON","output":"Excel","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/json-to-excel","en":"https://ordo.ordo-th.workers.dev/en/json-to-excel"}},{"id":"excel-to-json","name":"Excel to JSON","group":"Data","description":"Convert XLSX, XLS or ODS sheets to JSON records.","input":"Excel","output":"JSON","processing":"on-device","url":{"th":"https://ordo.ordo-th.workers.dev/th/excel-to-json","en":"https://ordo.ordo-th.workers.dev/en/excel-to-json"}}],"guides":[{"id":"thai-csv-in-excel","title":"Text looks garbled when I open a CSV","published":"2026-09-18","url":{"th":"https://ordo.ordo-th.workers.dev/th/guides/thai-csv-in-excel","en":"https://ordo.ordo-th.workers.dev/en/guides/thai-csv-in-excel"}},{"id":"excel-leading-zeros","title":"Leading zeros disappear in Excel","published":"2026-09-18","url":{"th":"https://ordo.ordo-th.workers.dev/th/guides/excel-leading-zeros","en":"https://ordo.ordo-th.workers.dev/en/guides/excel-leading-zeros"}},{"id":"cover-vs-redact-pdf","title":"Covering vs redacting a PDF: what's the difference?","published":"2026-09-26","url":{"th":"https://ordo.ordo-th.workers.dev/th/guides/cover-vs-redact-pdf","en":"https://ordo.ordo-th.workers.dev/en/guides/cover-vs-redact-pdf"}},{"id":"edit-thai-text-in-pdf","title":"How to edit supported text in a PDF","published":"2026-09-26","url":{"th":"https://ordo.ordo-th.workers.dev/th/guides/edit-thai-text-in-pdf","en":"https://ordo.ordo-th.workers.dev/en/guides/edit-thai-text-in-pdf"}},{"id":"sign-pdf-without-uploading","title":"How to sign a PDF without uploading it","published":"2026-09-26","url":{"th":"https://ordo.ordo-th.workers.dev/th/guides/sign-pdf-without-uploading","en":"https://ordo.ordo-th.workers.dev/en/guides/sign-pdf-without-uploading"}},{"id":"choose-online-pdf-editor","title":"How to choose an online PDF editor","published":"2026-09-26","url":{"th":"https://ordo.ordo-th.workers.dev/th/guides/choose-online-pdf-editor","en":"https://ordo.ordo-th.workers.dev/en/guides/choose-online-pdf-editor"}}],"updates":{"latest":[{"title":"ORDO Public Beta is live","published":"2026-09-26","url":{"th":"https://ordo.ordo-th.workers.dev/th/updates/public-beta","en":"https://ordo.ordo-th.workers.dev/en/updates/public-beta"}}],"feed":{"th":"https://ordo.ordo-th.workers.dev/th/updates/feed.xml","en":"https://ordo.ordo-th.workers.dev/en/updates/feed.xml"}},"limits":["Public beta.","Text already in a PDF is edited directly only where that can be done safely; otherwise a labelled cover-and-retype is offered.","Scanned pages are not read (no OCR).","No certificate-based digital signatures.","Password-protected PDFs must be unlocked first."],"discovery":{"sitemap":"https://ordo.ordo-th.workers.dev/sitemap.xml","robots":"https://ordo.ordo-th.workers.dev/robots.txt","llmsTxt":"https://ordo.ordo-th.workers.dev/llms.txt"}}