{"id":18544744,"url":"https://github.com/131/sqlfs","last_synced_at":"2025-05-15T05:34:18.903Z","repository":{"id":57368356,"uuid":"200519292","full_name":"131/sqlfs","owner":"131","description":"A sqlite powered inode table (for cloudfs, mostly)","archived":false,"fork":false,"pushed_at":"2019-09-21T15:05:16.000Z","size":77,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-27T10:44:21.804Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/131.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}},"created_at":"2019-08-04T16:59:37.000Z","updated_at":"2022-09-24T20:06:15.000Z","dependencies_parsed_at":"2022-08-23T19:30:40.504Z","dependency_job_id":null,"html_url":"https://github.com/131/sqlfs","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/131%2Fsqlfs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/131%2Fsqlfs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/131%2Fsqlfs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/131%2Fsqlfs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/131","download_url":"https://codeload.github.com/131/sqlfs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254282994,"owners_count":22045131,"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-06T20:17:27.999Z","updated_at":"2025-05-15T05:34:18.864Z","avatar_url":"https://github.com/131.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://travis-ci.org/131/sqlfs.svg?branch=master)](https://travis-ci.org/131/sqlfs)\n[![Coverage Status](https://coveralls.io/repos/github/131/sqlfs/badge.svg?branch=master)](https://coveralls.io/github/131/sqlfs?branch=master)\n[![Version](https://img.shields.io/npm/v/sqlitefs.svg)](https://www.npmjs.com/package/sqlitefs)\n[![License](https://img.shields.io/badge/license-MIT-blue.svg)](http://opensource.org/licenses/MIT)\n[![Code style](https://img.shields.io/badge/code%2fstyle-ivs-green.svg)](https://www.npmjs.com/package/eslint-plugin-ivs)\n![Available platform](https://img.shields.io/badge/platform-win32-blue.svg) ![Available platform](https://img.shields.io/badge/platform-linux-blue.svg)\n\n# Motivation\n\n[sqlfs](https://github.com/131/sqlfs) is a POSIX compliant inode table to be used as [fuse binding](https://github.com/mafintosh/fuse-bindings) engine. Inode table is store in a very simple [sqlite](https://www.npmjs.com/package/@131/sqlite3) file.\n\n[sqlfs](https://github.com/131/sqlfs) is the underlying inode table that support the [cloudfs](https://github.com/131/cloudfs) project.\n\n# Main features\n* Simple by design\n* Available on all platforms (linux \u0026 Windows)\n* Very fast (sqlite is actually fastest than most file system)\n* Strongly tested\n* [sqlfs](https://github.com/131/sqlfs) load the whole inode table in memory and use about 1k per file of inode data. So having 100k file will use at least 100MB of memory.\n\n# Supported API\n[sqlfs](https://github.com/131/sqlfs) support most of the [fuse](https://github.com/mafintosh/fuse-bindings) API (appart for file body access - open, release, read, write - see cloudfs for this part)\n\n- `gettattr`\n- `mkdir`\n- `readdir`\n- `rename`\n- `rmdir`\n- `statfs`\n- `unlink`\n- `utimens`\n- `create`\n\n## Helpers\n- `touch`\n- `mkdirp`\n- `rmrf`\n\n\n# inode table design\n\n| file_uid   | file_name | parent_uid      | file_mode | file_size | block_hash | file_ctime | file_mtime |\n| ---        | ---       | ---             | ---       | ---       | ---        | ---        | ---        |\n| (someguid) | usr       | (someotherguid) | S_IFDIR \\| 0o777 | 0         | *null*     | 1560000505 | 1560000505 |\n| (someguid) | \"foo\"     | (someotherguid) | S_IFREG \\| 0o666   | 2323      | (file md5) | 1560000505 | 1560000505 |\n\n\n# Credits\n* [131 - author](https://github.com/131)\n* [mafintosh' fuse-bindings](https://github.com/mafintosh/fuse-bindings)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F131%2Fsqlfs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F131%2Fsqlfs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F131%2Fsqlfs/lists"}