{"id":21995329,"url":"https://github.com/polymerlabs/webmat","last_synced_at":"2025-04-30T17:26:58.739Z","repository":{"id":48034156,"uuid":"128345922","full_name":"PolymerLabs/webmat","owner":"PolymerLabs","description":"Web + format = webmat","archived":false,"fork":false,"pushed_at":"2024-08-24T03:26:50.000Z","size":134,"stargazers_count":4,"open_issues_count":17,"forks_count":2,"subscribers_count":21,"default_branch":"master","last_synced_at":"2025-04-26T10:02:59.526Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PolymerLabs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"publiccode":null,"codemeta":null}},"created_at":"2018-04-06T05:19:17.000Z","updated_at":"2020-08-21T02:32:22.000Z","dependencies_parsed_at":"2024-06-18T18:38:11.339Z","dependency_job_id":"9b2f1c68-f499-4e0e-b764-b391cbf8ab5e","html_url":"https://github.com/PolymerLabs/webmat","commit_stats":{"total_commits":43,"total_committers":1,"mean_commits":43.0,"dds":0.0,"last_synced_commit":"4ba7d6defc9f783154ea357da565150949773f66"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PolymerLabs%2Fwebmat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PolymerLabs%2Fwebmat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PolymerLabs%2Fwebmat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PolymerLabs%2Fwebmat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PolymerLabs","download_url":"https://codeload.github.com/PolymerLabs/webmat/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251750453,"owners_count":21637725,"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":[],"created_at":"2024-11-29T21:14:15.800Z","updated_at":"2025-04-30T17:26:58.712Z","avatar_url":"https://github.com/PolymerLabs.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🕸💎 webmat 💎🕸\n\u003e web + format = webmat. It formats your web projects!\n\n# ⚠️ Warning: Still under early development ⚠️\nWebmat is still under development and you may run into issues. Issues may range\nfrom a lot of memory usage to ruining your project. Use at your own risk for\nnow.\n\n# 💡 Highlights\n* 🌎 Formats multiple files at once using an include / exclude glob api\n* 🔭 Searches through HTML files and formats only the script tags with contents\n* 🐀 Vaugely sounds like the word \"wombat\"\n\nwebmat is a formatter will run mulitple files in your project through a\nformatter (currently only clang-format). It will gather all the js, ts, and html\nfiles and format them in place. The trick of this pony is that it will format\nyour HTML files by gathering their script tags, formatting them, and replacing\nonly your script tags without touching the rest of your DOM.\n\n# Usage\nInstall webmat from npm:\n```bash\nnpm install -g webmat\n```\n\n## Simple usage\nwebmat will select files to format based off of a default set of globs defined\nin [`default_config.json`](https://github.com/PolymerLabs/webmat/blob/master/default_config.json).\nIf those defaults are fine, then you can simply run:\n```bash\nwebmat\n```\n\n## File Selection\nIf you would like to include or exclude files not included by the default\nconfig, then you can specify a set of globs in a `formatconfig.json` file in the\ndirectory that you are running webmat. An example:\n\n```json\n{\n  \"include\": [ \"protos/*.proto\", \"wasm/**/*.cpp\" ],\n  \"exclude\": [ \"generated_files/**/*\", \"formatter-mangles-my-code.html\" ]\n}\n```\n\nwebmat will simply append your custom config to the default config and then\nselect files using [fast-glob](https://github.com/mrmlnc/fast-glob)'s set of\nselection rules. fast-glob's reading algorithm will run the excludes first, so\nif you want to format a file that is in the default config's exclude list, then\nyou will have to add the `ignoreDefaultGlobs` flag to completely ignore the\ndefault include / exclude configurations.\n\n# API\nI haven't totally made this user friendly yet, please come back later!\n\n# Options\nThere are currently no command-line flags only `formatconfig.json`.\n\n## formatconfig.json\nTypes:\n```ts\n{\n  include: string[],\n  exclude: string[],\n  ignoreDefaultGlobs: boolean\n}\n```\n\nDescriptions:\n\n| property | description |\n| -------- | ----------- |\n| include | List of globs to include in format selection |\n| exclude | List of globs to exclude from format selection |\n| ignoreDefaultGlobs  | Completely ignores default include / exclude globs |","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpolymerlabs%2Fwebmat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpolymerlabs%2Fwebmat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpolymerlabs%2Fwebmat/lists"}