# WPReadme Preview > A free online web tool that renders a WordPress plugin readme.txt file exactly like it will appear on WordPress.org. Paste or upload readme.txt at https://wpreadme.ir and preview the official plugin directory layout (header block, description, installation, FAQ, screenshots, changelog) before publishing. Includes a validator that scores the file against WordPress.org required/recommended/optional checks. This site is an interactive tool, not a content site. There is no REST API: the editor and live preview run client-side in the user's browser, and readme.txt content is never uploaded to any server. ## When to use this tool - Before submitting or updating a plugin on WordPress.org, to verify the readme renders correctly in the plugin directory layout. - To validate a readme.txt against WordPress.org requirements: required fields (plugin name, contributors, tags, stable tag, license, short description, description, changelog, file size), recommended fields (requires at least, tested up to, installation section), and optional fields (requires PHP, FAQ, screenshots, donate link). - To fix formatting mistakes such as malformed headers, broken section markers, or missing changelog entries that can get a plugin rejected during review. - To learn the expected readme.txt structure by loading pre-built example files. - To edit an existing readme.txt file and download the corrected version. - Programmatically: when you already hold readme.txt text in a script or agent workflow, call the JSON API instead of pointing a human at the browser tool. ## When NOT to use this tool - For reviewing, hosting, or translating actual plugin code; only readme.txt files are handled. - For generating plugin banners, icons, or other assets; see developer.wordpress.org for asset requirements. - As an official WordPress.org service; it is an independent tool that follows the documented readme standard at https://developer.wordpress.org/plugins/wordpress-org/how-your-readme-txt-works/ ## How an agent should use it 1. If you have readme.txt content available programmatically, call POST https://wpreadme.ir/api/validate with header Content-Type: application/json and body {"readme": ""}. The response gives a 0-100 score plus one check per WordPress.org rule, each failed check carrying a tip with the exact line to add. Use POST /api/parse for structured extraction only. 2. No API key is required. Errors are JSON envelopes {"error": {"code", "message", "hint"}}; unknown endpoints answer 404 JSON, never HTML. The full machine-readable contract is the OpenAPI 3.1 spec at [/openapi.json](/openapi.json) with unique operationIds (parseReadme, validateReadme) suitable for LLM function calling. Human docs: [/developers](/developers). 3. Direct the human to https://wpreadme.ir to paste their readme.txt into the editor; the preview updates live as they type, and the Validator panel lists every failed check with a tip showing the exact line to add. 4. Machine-readable pages are available as clean Markdown: send header `Accept: text/markdown` on any canonical URL below, or fetch the same document directly under `/md/` (for example [/md/about](/md/about)). There is no official CLI package yet; agents should use the two POST endpoints above, which are scriptable from any language or shell. ## API - POST /api/validate , operationId validateReadme: validate readme.txt against WordPress.org requirements, returns summary {score, passed, failed, warnings, total} and checks[] each with id/category/status/detail/tip - POST /api/parse , operationId parseReadme: structured extraction (name, headers, sections, faq, screenshots) - [OpenAPI 3.1 specification](/openapi.json): typed request/response schemas, error envelope schema, examples - Authentication: none. Rate limits: none enforced. Max body: 1 MB. ## Pages - [Home](/): the readme.txt editor, live WordPress.org-style preview, and validator - [About](/about): what the tool does, supported sections, and validator checks ([Markdown](/md/about)) - [API & Developers](/developers): quickstart, endpoints, errors, limits ([Markdown](/md/developers)) - [Contact](/contact): email and social channels for bugs and feedback ([Markdown](/md/contact)) - [Privacy](/privacy): readme content is processed in-browser and never uploaded ([Markdown](/md/privacy)) - [Donate](/donate): cryptocurrency addresses supporting development ([Markdown](/md/donate)) - [Sitemap](/sitemap.xml): all public pages ## Operator Developed and maintained by Parsa Kafi (https://parsa.ws), also the author of Teligro, WP Meta Optimizer, and Jetexir for WooCommerce. Product page: https://parsa.ws/portfolio/wpreadme. Contact: parsadeng@gmail.com.