{"id":15388528,"url":"https://github.com/deebloo/virtual-fs","last_synced_at":"2026-02-16T13:03:30.677Z","repository":{"id":42223756,"uuid":"158608485","full_name":"deebloo/virtual-fs","owner":"deebloo","description":"A file system type interface for dealing with nested values by path","archived":false,"fork":false,"pushed_at":"2023-12-15T20:18:16.000Z","size":692,"stargazers_count":1,"open_issues_count":10,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-10-07T23:50:31.656Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/deebloo.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":"2018-11-21T21:31:26.000Z","updated_at":"2021-04-22T12:37:10.000Z","dependencies_parsed_at":"2023-12-15T21:46:26.923Z","dependency_job_id":"a73c2611-d738-4359-b2fd-9bbf88351e2d","html_url":"https://github.com/deebloo/virtual-fs","commit_stats":{"total_commits":24,"total_committers":2,"mean_commits":12.0,"dds":"0.45833333333333337","last_synced_commit":"a3fef38c887dddaf64f89cebf9e10f43ed23a558"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/deebloo/virtual-fs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deebloo%2Fvirtual-fs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deebloo%2Fvirtual-fs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deebloo%2Fvirtual-fs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deebloo%2Fvirtual-fs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/deebloo","download_url":"https://codeload.github.com/deebloo/virtual-fs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/deebloo%2Fvirtual-fs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29508740,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-16T09:05:14.864Z","status":"ssl_error","status_checked_at":"2026-02-16T08:55:59.364Z","response_time":115,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2024-10-01T14:57:08.352Z","updated_at":"2026-02-16T13:03:30.659Z","avatar_url":"https://github.com/deebloo.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# simple-virtual-fs\n\nA file system type interface for dealing with nested values by path\n\n```BASH\nnpm i simple-virtual-fs\n```\n\n#### Example:\n\n```TS\nimport { VirtualFs } from 'simple-virtual-fs';\n\nconst fs = new VirtualFs\u003cnumber\u003e()\n  .add('/foo/first', 1)\n  .add('/foo/second', 2)\n  .add('/foo/third', 3)\n  .add('/bar/fourth', 4)\n  .map(item =\u003e item * 2 : 0);\n\nconst res = fs.getChildren('/foo'); // ['/foo/first', '/foo/second', '/foo/third']\n\nres.forEach(path =\u003e {\n  console.log(fs.read(path)) //  2 -\u003e 4 -\u003e 6\n});\n```\n\n### Observe Changes.\n\n```TS\nimport { VirtualFs } from 'virtual-fs';\n\nconst fs = new VirtualFs\u003cnumber\u003e();\n\nfs.observe.subscribe((fs: FakeFs\u003cnumber\u003e) =\u003e {\n  // returns initial instance and then triggers when anything the instance updates\n});\n\nfs.add('/foo/first', 1)\n  .add('/foo/second', 2)\n  .add('/foo/third', 3)\n  .add('/bar/fourth', 4);\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeebloo%2Fvirtual-fs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdeebloo%2Fvirtual-fs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdeebloo%2Fvirtual-fs/lists"}