{"id":22826949,"url":"https://github.com/create3000/x3d-tidy","last_synced_at":"2025-03-31T00:42:43.290Z","repository":{"id":65415118,"uuid":"568097414","full_name":"create3000/x3d-tidy","owner":"create3000","description":"X3D Converter, Beautifier and Minimizer","archived":false,"fork":false,"pushed_at":"2024-04-15T09:30:41.000Z","size":134,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-04-17T02:51:51.521Z","etag":null,"topics":["beautifier","converter","gltf2","json","ply","svg","vrml","wavefront-obj","x3d"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/x3d-tidy","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/create3000.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2022-11-19T12:52:19.000Z","updated_at":"2024-04-19T00:32:44.746Z","dependencies_parsed_at":null,"dependency_job_id":"faeff8ca-fa7e-4d8a-8fbd-be5b418c58e8","html_url":"https://github.com/create3000/x3d-tidy","commit_stats":{"total_commits":69,"total_committers":1,"mean_commits":69.0,"dds":0.0,"last_synced_commit":"8ebf68eae85415b4b2fb1648783944c4b16ae422"},"previous_names":[],"tags_count":33,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/create3000%2Fx3d-tidy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/create3000%2Fx3d-tidy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/create3000%2Fx3d-tidy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/create3000%2Fx3d-tidy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/create3000","download_url":"https://codeload.github.com/create3000/x3d-tidy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246296583,"owners_count":20754632,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["beautifier","converter","gltf2","json","ply","svg","vrml","wavefront-obj","x3d"],"created_at":"2024-12-12T18:07:06.296Z","updated_at":"2025-03-31T00:42:43.283Z","avatar_url":"https://github.com/create3000.png","language":"JavaScript","readme":"# x3d-tidy\n\n[![NPM Version](https://img.shields.io/npm/v/x3d-tidy)](https://www.npmjs.com/package/x3d-tidy)\n[![NPM Downloads](https://img.shields.io/npm/dm/x3d-tidy)](https://npmtrends.com/x3d-tidy)\n[![DeepScan grade](https://deepscan.io/api/teams/23540/projects/26815/branches/855448/badge/grade.svg)](https://deepscan.io/dashboard#view=project\u0026tid=23540\u0026pid=26815\u0026bid=855448)\n\nX3D converter, beautifier and minimizer\n\n## Synopsis\n\nYou can run *x3d-tidy* without installing it using **npx**:\n\n**npx x3d-tidy** \\[options\\] -i input-file -o output-file [-i input-file -o output-file ...]\n\n## Overview\n\n*x3d-tidy* is a command-line tool designed for processing X3D (Extensible 3D) files. It provides both conversion and data mining capabilities to enhance and streamline working with X3D content.\n\n* Run *x3d-tidy* with `npx x3d-tidy ...` directly from npm without installing it.\n* Format Conversion: Transforms X3D files between different encodings, such as XML, Classic VRML, and JSON.\n* Syntax Cleanup: Ensures well-formed and standardized X3D output by fixing structural inconsistencies and formatting issues.\n* Data Extraction: Mines relevant data from X3D scenes, allowing analysis and reuse of geometries, metadata, and structure.\n* Validation \u0026 Optimization: Helps identify errors, redundant elements, and inefficiencies in X3D models.\n* Command-line Usability: Easily integrates into automation workflows and scripts for batch processing.\n\nThis tool is particularly useful for developers, 3D artists, and researchers working with X3D-based applications, ensuring clean, efficient, and interoperable files.\n\n## Options\n\n**x3d-tidy** interprets the following options when it is invoked:\n\n### -i *file(s)* ...\n\nSet input file(s). This can be either a local file path or a URL. If there are less input files than output files, the last input file is used for the remaining output files.\n\n### -o *file(s)* ...\n\nSet output file(s). To output it to stdout use only the extension, e.g. \".x3dv\".\n\n### -s *[**TIDY**, COMPACT, SMALL, CLEAN]*\n\nSet output style, default is \"TIDY\". \"TIDY\" results in a good readable file, but with larger size, whereas \"CLEAN\" result in the smallest size possible by removing all redundant whitespaces. The other values are somewhere in between.\n\n### -d *integer*\n\nSet double precision, default is 15.\n\n### -f *integer*\n\nSet float precision, default is 7.\n\n### -r\n\nIf set, infer profile and components from used nodes.\n\n### -m\n\nIf set, remove metadata nodes.\n\n### -v\n\nShow version.\n\n### -h\n\nShow help.\n\n## Supported Input File Types\n\n| Encoding         | File Extension | MIME Type       |\n|------------------|----------------|-----------------|\n| X3D XML          | .x3d, .x3dz    | model/x3d+xml   |\n| X3D JSON         | .x3dj, .x3djz  | model/x3d+json  |\n| X3D Classic VRML | .x3dv, .x3dvz  | model/x3d+vrml  |\n| VRML             | .wrl, .wrz     | model/vrml      |\n| glTF             | .gltf, .glb    | model/gltf+json |\n| Wavefront OBJ    | .obj           | model/obj       |\n| STL              | .stl           | model/stl       |\n| PLY              | .ply           | model/ply       |\n| SVG Document     | .svg, .svgz    | image/svg+xml   |\n\n## Supported Output File Types\n\n| X3D Encoding | File Extension | MIME Type      |\n|--------------|----------------|----------------|\n| XML          | .x3d, .x3dz    | model/x3d+xml  |\n| JSON         | .x3dj, .x3djz  | model/x3d+json |\n| Classic VRML | .x3dv, .x3dvz  | model/x3d+vrml |\n| HTML         | .html          | text/html      |\n\n## Examples\n\nConvert an XML encoded file to a VRML encoded file.\n\n```sh\n$ npx x3d-tidy -i file.x3d -o file.x3dv\n```\n\nConvert an XML encoded file to a VRML encoded file and a JSON encoded file with smallest size possible by removing redundant whitespaces.\n```sh\n$ npx x3d-tidy -s CLEAN -i file.x3d -o file.x3dv file.x3dj\n```\n\n## Online Converter\n\n[Online X3D File Format Converter](https://create3000.github.io/x_ite/laboratory/x3d-file-converter) powered by [X_ITE](https://create3000.github.io/x_ite/).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcreate3000%2Fx3d-tidy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcreate3000%2Fx3d-tidy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcreate3000%2Fx3d-tidy/lists"}