{"id":16772603,"url":"https://github.com/rohitdhas/helix-db","last_synced_at":"2025-08-18T22:30:55.592Z","repository":{"id":153991841,"uuid":"631215389","full_name":"rohitdhas/helix-db","owner":"rohitdhas","description":"A Simple NoSQL DB 💾 written in TypeScript for Node.JS. 🚀","archived":false,"fork":false,"pushed_at":"2023-05-05T17:06:48.000Z","size":237,"stargazers_count":8,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-04-29T10:20:33.024Z","etag":null,"topics":["database","helix","nosql"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/helix-db","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/rohitdhas.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":"2023-04-22T10:00:57.000Z","updated_at":"2024-03-02T13:29:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"95232f5d-5963-4392-9b78-59ccb37dda64","html_url":"https://github.com/rohitdhas/helix-db","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohitdhas%2Fhelix-db","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohitdhas%2Fhelix-db/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohitdhas%2Fhelix-db/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rohitdhas%2Fhelix-db/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rohitdhas","download_url":"https://codeload.github.com/rohitdhas/helix-db/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230282208,"owners_count":18202065,"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":["database","helix","nosql"],"created_at":"2024-10-13T06:43:20.477Z","updated_at":"2024-12-18T13:42:19.427Z","avatar_url":"https://github.com/rohitdhas.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🌀 Helix DB\n\nHelix DB is a simple NoSQL database written in TypeScript for Node.js. It uses a JSON file as its data store, making it easy to set up and use.\n\n## ✨ Features\n\n- Simple and easy-to-use API\n- Supports basic CRUD operations (create, read, update, delete)\n- Stores data in a JSON file\n- Uses UUIDs as document IDs for uniqueness\n- Lightweight and minimalistic\n\n## 📥 Installation\n\nYou can install Helix DB using npm:\n\n```\nnpm install helix-db\n```\n\n## 🧑‍💻 Getting Started\n\nTo use Helix DB in your Node.js project, you can import the `HelixDB` class from the `helix-db` module and create an instance of the class to start using its API.\n\n```typescript\nconst { HelixDB } = require('helix-db');\n\n// Create DB Instance\nconst db = new HelixDB();\n\n// Create a new document\nconst doc = db.create({ name: \"Rohit Dhas\", age: 20 });\n\n// Read a document by ID\nconst retrievedDoc = db.getById(doc.id);\n\n// Update a document\ndb.update(doc.id, { age: 21 });\n\n// Delete a document\ndb.delete(doc.id);\n```\n\nYou can also retrieve all documents from the database using the `getAll` method:\n\n```typescript\nconst allDocs = db.getAll();\n```\n\nYou can erase the database using `erase` method:\n\n```typescript\n// 🚧 this will erase all data\ndb.erase();\n```\n\n\n## 🚧 Limitations\n\nHelix DB is designed to be a simple and lightweight database for small to medium-sized applications. As such, it has some limitations:\n\n- Helix DB is not suitable for very large datasets, as all documents are loaded into memory when the database is initialized.\n- The maximum size of the database is limited to `5 MB` by default. This can be changed by providing a `maxSize` option in the Database constructor. If the database size exceeds the configured limit, an error will be thrown.\n\n## 🚀 Contributing\n\nIf you find a bug or have a feature request, please open an issue on the [GitHub repository](https://github.com/rohitdhas/helix-db/issues). Pull requests are welcome too! \n\n## 📜 License\n\nHelix DB is licensed under the [MIT License](https://opensource.org/licenses/MIT).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frohitdhas%2Fhelix-db","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frohitdhas%2Fhelix-db","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frohitdhas%2Fhelix-db/lists"}