{"id":343910,"date":"2026-07-23T16:26:48","date_gmt":"2026-07-23T16:26:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/netdraw\/"},"modified":"2026-07-23T16:51:22","modified_gmt":"2026-07-23T16:51:22","slug":"netdraw","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/netdraw\/","author":14711912,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.1","stable_tag":"1.0.1","tested":"7.0.2","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"NetDraw","header_author":"Aida Martinez","header_description":"A lightweight, spreadsheet-style WordPress plugin for managing and displaying knockout tennis tournaments with visual brackets.","assets_banners_color":"7aa1b5","last_updated":"2026-07-23 16:51:22","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":51,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"aida-martinez","date":"2026-07-23 16:26:40"},"1.0.1":{"tag":"1.0.1","author":"aida-martinez","date":"2026-07-23 16:51:22"}},"upgrade_notice":{"1.0.1":"<p>Added translation support for Spanish, French, Italian, and Galician.<\/p>","1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3620277,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128}},"assets_banners":{"banner-772x250.png":{"filename":"banner-772x250.png","revision":3620277,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3620277,"resolution":"1","location":"assets","locale":"","width":3105,"height":1867},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3620277,"resolution":"2","location":"assets","locale":"","width":1936,"height":1348}},"screenshots":{"1":"The admin bracket editor \u2014 enter player names and log scores round by round.","2":"The frontend visual bracket \u2014 a responsive, tree-style knockout draw with path highlighting."}},"plugin_section":[],"plugin_tags":[14117,273016,4776,11932,14116],"plugin_category":[37],"plugin_contributors":[273017],"plugin_business_model":[],"class_list":["post-343910","plugin","type-plugin","status-publish","hentry","plugin_tags-bracket","plugin_tags-knockout","plugin_tags-sports","plugin_tags-tennis","plugin_tags-tournament","plugin_category-arts-and-entertainment","plugin_contributors-aida-martinez","plugin_committers-aida-martinez"],"banners":{"banner":"https:\/\/ps.w.org\/netdraw\/assets\/banner-772x250.png?rev=3620277","banner_2x":false,"banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/netdraw\/assets\/icon-128x128.png?rev=3620277","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/netdraw\/assets\/screenshot-1.png?rev=3620277","caption":"The admin bracket editor \u2014 enter player names and log scores round by round."},{"src":"https:\/\/ps.w.org\/netdraw\/assets\/screenshot-2.png?rev=3620277","caption":"The frontend visual bracket \u2014 a responsive, tree-style knockout draw with path highlighting."}],"raw_content":"<!--section=description-->\n<p>NetDraw is a lightweight, spreadsheet-style WordPress plugin designed specifically for managing and displaying knockout tennis tournaments. Think of it as \"TablePress, but built for brackets instead of standard tables.\"<\/p>\n\n<p>It eliminates the need to use clunky third-party bracket websites or messy image uploads, keeping the entire tennis tournament experience native to your WordPress site.<\/p>\n\n<p><strong>For Tournament Admins (Backend)<\/strong><\/p>\n\n<ul>\n<li><strong>Simple Setup<\/strong>: Create a new tournament draw just like writing a standard post or page in WordPress.<\/li>\n<li><strong>Flexible Sizing<\/strong>: Choose your tournament size (8, 16, 32, or 64 players) via a simple dropdown selection.<\/li>\n<li><strong>Easy Data Entry<\/strong>: Dynamically generates a clean grid of input fields where you can type in player names for the first round and log scores as matches finish.<\/li>\n<li><strong>Automatic Progression<\/strong>: Mark a player as the winner of a match and the plugin automatically pushes their name forward into the next round's slot \u2014 saving you from manual re-typing.<\/li>\n<\/ul>\n\n<p><strong>For Website Visitors (Frontend)<\/strong><\/p>\n\n<ul>\n<li><strong>Visual Brackets<\/strong>: Generates a clean, classic, tree-style tournament bracket on any page or post using a simple shortcode (e.g., <code>[netdraw id=\"123\"]<\/code>).<\/li>\n<li><strong>Path Highlighting<\/strong>: Hovering over any player highlights their entire journey (matches won, played, and progressed) across all rounds in real-time.<\/li>\n<li><strong>Responsive Design<\/strong>: Uses a custom CSS tree-structure layout that enables smooth horizontal scrolling on mobile, tablet, and desktop screens without breaking the visual integrity.<\/li>\n<li><strong>No Bloat<\/strong>: Built purely using Vanilla JS and native CSS \u2014 no jQuery or external visual dependencies.<\/li>\n<\/ul>\n\n<h3>Usage<\/h3>\n\n<h4>Creating a Tournament<\/h4>\n\n<ol>\n<li>Navigate to the <strong>NetDraw<\/strong> section in your WordPress Admin sidebar.<\/li>\n<li>Click <strong>Add New Tournament<\/strong>.<\/li>\n<li>Enter a title for your tournament (e.g., <em>Summer Club Open 2026<\/em>).<\/li>\n<li>Under the <strong>Tournament Bracket Editor<\/strong> meta box, choose the tournament size (8, 16, 32, or 64 players).<\/li>\n<li>Fill in the player names for <strong>Round 1<\/strong>.<\/li>\n<li>As matches finish, fill in the score (e.g., <code>6-4 6-2<\/code>) and click the checkmark next to the winning player's name to automatically progress them to the next round.<\/li>\n<li>Click <strong>Publish<\/strong> or <strong>Update<\/strong> to save.<\/li>\n<\/ol>\n\n<h4>Displaying the Bracket<\/h4>\n\n<p>Copy the shortcode shown in the Tournament Bracket Editor, or construct it manually using the Post ID:<\/p>\n\n<pre><code>[netdraw id=\"YOUR_POST_ID\"]\n<\/code><\/pre>\n\n<p>Paste it into any WordPress Post, Page, or Widget area to display the visual bracket.<\/p>\n\n<h3>Data and Privacy<\/h3>\n\n<p>NetDraw does not collect, store, or transmit any personal data to external services. All tournament data (player names, scores, results) is stored exclusively in your own WordPress database as post meta. No cookies are set by this plugin on the frontend.<\/p>\n\n<h3>Developer Notes<\/h3>\n\n<h4>Data Schema<\/h4>\n\n<p>The plugin stores tournament configuration and match data in a flat, index-based JSON object inside the <code>_netdraw_bracket_data<\/code> post meta field:<\/p>\n\n<pre><code>{\n  \"size\": 8,\n  \"matches\": {\n    \"r1_m1\": { \"p1\": \"Federer\", \"p2\": \"Nadal\", \"score\": \"6-4 6-2\", \"winner\": \"p1\" },\n    \"r1_m2\": { \"p1\": \"Djokovic\", \"p2\": \"Murray\", \"score\": \"7-5 6-3\", \"winner\": \"p1\" },\n    \"r2_m1\": { \"p1\": \"Federer\", \"p2\": \"Djokovic\", \"score\": \"\", \"winner\": \"\" }\n  }\n}\n<\/code><\/pre>\n\n<h4>Dynamic Progression Logic<\/h4>\n\n<p>To map match results forward, NetDraw uses simple binary propagation:<\/p>\n\n<ul>\n<li>The next match index = ceiling( m \/ 2 ), where m is the current match number within the round.<\/li>\n<li>If m is odd, the winner becomes Player 1 (p1) of the next match.<\/li>\n<li>If m is even, the winner becomes Player 2 (p2) of the next match.<\/li>\n<li>Subsequent rounds are set to read-only in the admin panel to prevent data out-of-sync issues.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Download the <code>netdraw.zip<\/code> file from the plugin page.<\/li>\n<li>In your WordPress Admin Panel, navigate to <strong>Plugins<\/strong> &gt; <strong>Add New Plugin<\/strong>.<\/li>\n<li>Click on <strong>Upload Plugin<\/strong> at the top.<\/li>\n<li>Select the <code>netdraw.zip<\/code> file and click <strong>Install Now<\/strong>.<\/li>\n<li>Once installed, click <strong>Activate Plugin<\/strong>.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"what%20tournament%20formats%20are%20supported%3F\"><h3>What tournament formats are supported?<\/h3><\/dt>\n<dd><p>NetDraw currently supports single-elimination (knockout) brackets with 8, 16, 32, or 64 players.<\/p><\/dd>\n<dt id=\"can%20i%20use%20this%20for%20sports%20other%20than%20tennis%3F\"><h3>Can I use this for sports other than tennis?<\/h3><\/dt>\n<dd><p>Yes! While designed with tennis in mind, NetDraw works for any knockout-style tournament.<\/p><\/dd>\n<dt id=\"does%20netdraw%20work%20on%20mobile%3F\"><h3>Does NetDraw work on mobile?<\/h3><\/dt>\n<dd><p>Yes. The frontend bracket uses horizontal scrolling and is fully functional on mobile and tablet devices.<\/p><\/dd>\n<dt id=\"where%20is%20tournament%20data%20stored%3F\"><h3>Where is tournament data stored?<\/h3><\/dt>\n<dd><p>All tournament data is stored in your WordPress database as post meta attached to the tournament post. No data is sent to any external service.<\/p><\/dd>\n<dt id=\"what%20happens%20to%20my%20data%20if%20i%20uninstall%20the%20plugin%3F\"><h3>What happens to my data if I uninstall the plugin?<\/h3><\/dt>\n<dd><p>When you delete the plugin via the WordPress admin, all tournament posts and their associated data are permanently removed from your database.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Added Spanish, French, Italian, and Galician translations.<\/li>\n<li>Localized admin and frontend JavaScript assets.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Custom Post Type for tournaments.<\/li>\n<li>Admin bracket editor with dynamic grid and automatic progression.<\/li>\n<li>Frontend visual bracket with path highlighting via shortcode.<\/li>\n<li>Responsive CSS tree layout with no external dependencies.<\/li>\n<\/ul>","raw_excerpt":"A lightweight WordPress plugin for managing and displaying knockout tennis tournament brackets with a visual, interactive frontend.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/343910","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=343910"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/aida-martinez"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=343910"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=343910"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=343910"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=343910"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=343910"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=343910"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}