{"id":19176344,"url":"https://github.com/MMRLApp/ModFS","last_synced_at":"2025-09-09T10:31:49.094Z","repository":{"id":250150899,"uuid":"823793966","full_name":"MMRLApp/ModFS","owner":"MMRLApp","description":"ModFS is a json format processor and also used in MMRL as the ModFS system. See it in action at mmrl.dergoogler.com","archived":false,"fork":false,"pushed_at":"2024-09-18T15:24:11.000Z","size":12,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-09-03T14:50:17.575Z","etag":null,"topics":["javascript","json","library","mmrl","npm","typescript"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/modfs","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MMRLApp.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,"publiccode":null,"codemeta":null}},"created_at":"2024-07-03T18:20:30.000Z","updated_at":"2025-09-03T10:16:10.000Z","dependencies_parsed_at":"2024-11-09T10:28:49.986Z","dependency_job_id":null,"html_url":"https://github.com/MMRLApp/ModFS","commit_stats":null,"previous_names":["dergoogler/modfs","mmrlapp/modfs"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/MMRLApp/ModFS","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MMRLApp%2FModFS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MMRLApp%2FModFS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MMRLApp%2FModFS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MMRLApp%2FModFS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MMRLApp","download_url":"https://codeload.github.com/MMRLApp/ModFS/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MMRLApp%2FModFS/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274283041,"owners_count":25256463,"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","status":"online","status_checked_at":"2025-09-09T02:00:10.223Z","response_time":80,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["javascript","json","library","mmrl","npm","typescript"],"created_at":"2024-11-09T10:28:07.533Z","updated_at":"2025-09-09T10:31:48.747Z","avatar_url":"https://github.com/MMRLApp.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ModFS\n\n**Supports**\n\n`array`, `array.length`, `string`, `number`, `boolean`, custom arrays separator with `\u003carray(, )\u003e`, custom array element start and end with `\u003carray(, |\"\")\u003e`\n\nFunctions now supported `\u003cKEY=(arg1|arg2)\u003e`\n\nUsage\n\n```ts\nimport ModFS from \"modfs\";\nconst fs = new ModFS({\n  ADB: \"/data/adb\",\n  MODULES: \"\u003cADB\u003e/modules\",\n  NESTED: {\n    NAME: \"Kevin\",\n    PATH: \"\u003cADB\u003e/user/\u003cNESTED.NAME\u003e\",\n  },\n  CALL: () =\u003e {\n    return \"Nice\";\n  },\n});\n\nconst text = ModFS.format(\n  \"The family of \u003chuman.firstName\u003e goes averagely over \u003cavgAge\u003e years and the fun fact is that the last name of the family is \u003chuman.lastName\u003e. Currently the family has a member count of \u003cfamilyMembers.length\u003e. The names of family are \u003cfamilyMembers(, )\u003e.\",\n  {\n    human: {\n      firstName: \"Kevin\",\n      lastName: undefined,\n    },\n    avgAge: 100,\n    familyMembers: [\"Granpa\", \"Papa\", \"Mama\"],\n  }\n);\n\nconst zips = [\"https://google.com\", \"https://google.com\"];\n\nconst urls = ModFS.format('mmrl install local \u003cZIPFILES( |\"\")\u003e', {\n  ZIPFILES: zips,\n});\n\nconsole.log(\"arrays:\", urls);\n\nconsole.log(\"ModFS.format:\", text);\n\nconsole.log(\"get:\", fs.get(\"MODULES\"));\n\nconsole.log(\"get (nested):\", fs.get(\"NESTED\"));\nconsole.log(\"get (nested.PATH):\", fs.get(\"NESTED.PATH\")); // returns \"/data/adb/user/Kevin\"\nconsole.log(\"get (nested.NAME):\", fs.get(\"NESTED.NAME\")); // returns \"Kevin\"\n\nconsole.log(\"get (function):\", fs.get(\"CALL\"));\n\nconsole.log(\"formatEntries:\", fs.formatEntries());\n\nconsole.log(\"entries:\", fs.entries);\n\nconsole.log(\"stringify:\", fs.stringify(null, 4));\n\nconsole.log(\"stringifyEntries:\", fs.stringifyEntries(null, 4));\n\nconst result = ModFS.format(\"Module \u003cvaldilate=(magifsk|mkshrc)\u003e\", {\n  valdilate: (root, mod) =\u003e {\n    if (root.toLowerCase() === \"magisk\") {\n      return mod;\n    } else {\n      return \"\"\n    }\n  },\n});\n\nconsole.log(result);\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMMRLApp%2FModFS","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FMMRLApp%2FModFS","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMMRLApp%2FModFS/lists"}