{"id":26547090,"url":"https://github.com/anyone-developer/anyone-validate-fs","last_synced_at":"2025-03-22T05:29:12.060Z","repository":{"id":37847397,"uuid":"305319517","full_name":"anyone-developer/anyone-validate-fs","owner":"anyone-developer","description":"This action helps you to validate the file structure as you expected. The validate rule will follow the brace-expansion.","archived":false,"fork":false,"pushed_at":"2023-01-25T21:02:10.000Z","size":2798,"stargazers_count":1,"open_issues_count":19,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-10-17T06:31:47.787Z","etag":null,"topics":["anyone-developer","anyone-validate-fs","github-actions"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/anyone-developer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":"zhangnan","tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2020-10-19T08:46:01.000Z","updated_at":"2021-08-12T09:17:13.000Z","dependencies_parsed_at":"2023-02-06T06:16:53.530Z","dependency_job_id":null,"html_url":"https://github.com/anyone-developer/anyone-validate-fs","commit_stats":{"total_commits":160,"total_committers":5,"mean_commits":32.0,"dds":0.4375,"last_synced_commit":"40c28049b9d5858e77e78268a3d99be0afbe9855"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anyone-developer%2Fanyone-validate-fs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anyone-developer%2Fanyone-validate-fs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anyone-developer%2Fanyone-validate-fs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anyone-developer%2Fanyone-validate-fs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/anyone-developer","download_url":"https://codeload.github.com/anyone-developer/anyone-validate-fs/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244912800,"owners_count":20530764,"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":["anyone-developer","anyone-validate-fs","github-actions"],"created_at":"2025-03-22T05:29:11.395Z","updated_at":"2025-03-22T05:29:12.052Z","avatar_url":"https://github.com/anyone-developer.png","language":"JavaScript","funding_links":["https://ko-fi.com/zhangnan","https://paypal.me/nzhang4"],"categories":[],"sub_categories":[],"readme":"# anyone-validate-fs\n\n![nightly-build](https://github.com/anyone-developer/anyone-validate-fs/workflows/nightly-build/badge.svg)\n![release-build](https://github.com/anyone-developer/anyone-validate-fs/workflows/release-build/badge.svg)\n![release-test](https://github.com/anyone-developer/anyone-validate-fs/workflows/release-test/badge.svg)\n[![FOSSA Status](https://app.fossa.com/api/projects/custom%2B21065%2Fgit%40github.com%3Aanyone-developer%2Fanyone-validate-fs.git.svg?type=small)](https://app.fossa.com/projects/custom%2B21065%2Fgit%40github.com%3Aanyone-developer%2Fanyone-validate-fs.git?ref=badge_small)\n[![DependaBot](https://badgen.net/github/dependabot/anyone-developer/anyone-validate-fs)](https://github.com/anyone-developer/anyone-validate-fs/network/updates)\n![version](https://badgen.net/npm/v/@anyone-developer/anyone-validate-fs)\n![license](https://badgen.net/github/license/anyone-developer/anyone-validate-fs)\n[![Build Status](https://travis-ci.org/anyone-developer/anyone-validate-fs.svg?branch=main)](https://travis-ci.org/anyone-developer/anyone-validate-fs)\n[![XO code style](https://badgen.net/xo/status/chalk)](https://github.com/xojs/xo)\n[![Total alerts](https://img.shields.io/lgtm/alerts/g/anyone-developer/anyone-validate-fs.svg?logo=lgtm\u0026logoWidth=18)](https://lgtm.com/projects/g/anyone-developer/anyone-validate-fs/alerts/)\n[![Language grade: JavaScript](https://img.shields.io/lgtm/grade/javascript/g/anyone-developer/anyone-validate-fs.svg?logo=lgtm\u0026logoWidth=18)](https://lgtm.com/projects/g/anyone-developer/anyone-validate-fs/context:javascript)\n[![DeepScan grade](https://deepscan.io/api/teams/11532/projects/14440/branches/269275/badge/grade.svg)](https://deepscan.io/dashboard#view=project\u0026tid=11532\u0026pid=14440\u0026bid=269275)\n[![Gitpod Ready-to-Code](https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/anyone-developer/anyone-validate-fs)\n\nThis GitHub action helps you to validate the file structure as you expected. The validate rule will follow the brace-expansion. For a more official definition, please refer to https://www.gnu.org/software/bash/manual/bash.html#Brace-Expansion\n\n*If you like my module, please buy me a coffee.*\n\n*More and more tiny and useful GitHub action modules are on the way. Please donate to me. I accept a part-time job contract. if you need, please contact me: zhang_nan_163@163.com*\n\n## Inputs\n\n### `brace-expansion`\n\n**Required** brace-expansion of the expected directory structure.\n\n### `ignore-files`\n\nthe files you want to ignore. split with a comma.\n\n### `ignore-directories`\n\nthe directories you want to ignore. split with a comma.\n\n### `read-path`\n\nthe path that you assign to read.\n\n### `render-layout`\n\nrender diff result with \\'vertical\\' or \\'horizontal\\'\n\n## Outputs\n\n### `output`\n\nthe output of execution.\n\n## Other way usages\n\n### `From NPM for programmatic use`\n\n- create a 'demo' folder\n- **npm init** to create your nodejs package\n- copy 'sample_folder' to demo\n- **npm install anyone-validate-fs** to install module\n- create 'index.js' and copy code below:\n\n```javascript\n\nconst avfs = require('@anyone-developer/anyone-validate-fs');\n\navfs.setRenderLayout(\"horizontal\").diff(\n    './sample_folder',\n    '{x/p,y/f,{a,b/{ba1,ba2,bb1,bb2},c,d}/{a.qa.config,b.prd.config}}',\n    \"README.md\",\n    \".git\"\n).then(resolve =\u003e {\n\tconsole.info(resolve.diff);\n}, error =\u003e {\n\tif (error \u0026\u0026 error.diff) {\n\t\tconsole.error(`${error.diff}`);\n\t}\n});\n\n```\n\nhere is repl.it online editor: https://repl.it/@EdwardRoshan/anyone-validate-fs-demo\n\n- **node index.js** to run it\n\n\u003cimg src=\"https://raw.githubusercontent.com/anyone-developer/anyone-validate-fs/main/misc/module.png\" width=\"500\"\u003e\n\n\n### `From NPM for using as a command-line app`\n\n- **npm install -g anyone-validate-fs** to install gobally\n- **anyone-validate-fs -r './sample_folder' -b '{a,b/{ba1,ba2,bb1,bb2},c,d}/{a.qa.config,b.prd.config}' -I \".git\" -i \"README.md\"** to use your bash to execute it.\n- you would get same result with above screenshot\n\n## Example usage\n\n```yml\nuses: anyone-developer/anyone-validate-fs@main\nwith:\n  brace-expansion: '{a,b/{ba1,ba2,bb1,bb2},c,d}/{a.qa.config,b.prd.config}'\n  ignore-files: 'README.md'\n  ignore-directories: '.git'\n  read-path: 'sample_folder'\n  render-layout: 'horizontal'\n```\n\n## Fossa Report\n\n[![FOSSA Status](https://app.fossa.com/api/projects/custom%2B21065%2Fgit%40github.com%3Aanyone-developer%2Fanyone-validate-fs.git.svg?type=large)](https://app.fossa.com/projects/custom%2B21065%2Fgit%40github.com%3Aanyone-developer%2Fanyone-validate-fs.git?ref=badge_large)\n\n## Donation\n\nPalPal: https://paypal.me/nzhang4\n\n\u003cimg src=\"https://raw.githubusercontent.com/anyone-developer/anyone-validate-fs/main/misc/alipay.JPG\" width=\"500\"\u003e\n\n\u003cimg src=\"https://raw.githubusercontent.com/anyone-developer/anyone-validate-fs/main/misc/webchat_pay.JPG\" width=\"500\"\u003e\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanyone-developer%2Fanyone-validate-fs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanyone-developer%2Fanyone-validate-fs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanyone-developer%2Fanyone-validate-fs/lists"}