axiodb 2.15.53 → 2.16.53
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +96 -17
- package/lib/Operation/Database/database.operation.js +4 -1
- package/lib/Operation/Database/database.operation.js.map +1 -1
- package/lib/Operation/Indexation.operation.js +4 -1
- package/lib/Operation/Indexation.operation.js.map +1 -1
- package/lib/Storage/FolderManager.js +8 -4
- package/lib/Storage/FolderManager.js.map +1 -1
- package/lib/config/Interfaces/Operation/Indexation.operation.interface.d.ts +4 -1
- package/lib/config/Interfaces/Operation/database.operation.interface.d.ts +5 -2
- package/package.json +1 -1
- package/src/components/CreateCollection.tsx +0 -0
package/README.md
CHANGED
|
@@ -33,6 +33,8 @@ AxioDB is a blazing-fast, lightweight, and scalable open-source Database Managem
|
|
|
33
33
|
- **Plug-and-Play Setup:** No additional database server required—install and start building instantly.
|
|
34
34
|
- **Tree-like Structure:** Store data in a tree-like structure for efficient data retrieval and management.
|
|
35
35
|
- **Auto Indexing on documentId:** Automatically create index on documentId for faster queries.
|
|
36
|
+
- **Single Instance Architecture:** For data consistency and security, you can initialize only one AxioDB instance with the `new` keyword. Under this single instance, you can create unlimited databases, collections, and documents.
|
|
37
|
+
- **Web-Based GUI Dashboard:** When you create an AxioDB instance and run your project, it automatically starts a web-based GUI on `localhost:27018` for visual database management (currently under development).
|
|
36
38
|
|
|
37
39
|
---
|
|
38
40
|
|
|
@@ -81,18 +83,79 @@ npm install axiodb@latest --save
|
|
|
81
83
|
|
|
82
84
|
## 🛠️ Usage
|
|
83
85
|
|
|
86
|
+
> **Important Note:** AxioDB uses a single instance architecture. You should initialize only one AxioDB instance with the `new` keyword, under which you can create unlimited databases, collections, and documents. This design ensures data consistency and security across your application.
|
|
87
|
+
|
|
88
|
+
### Collection Creation Options
|
|
89
|
+
|
|
90
|
+
When creating collections, you need to specify these parameters in the `createCollection` method:
|
|
91
|
+
|
|
92
|
+
```javascript
|
|
93
|
+
// Signature of createCollection method:
|
|
94
|
+
createCollection(
|
|
95
|
+
name: string, // Name of the collection (required)
|
|
96
|
+
isSchemaNeeded: boolean, // Whether schema validation is needed (required)
|
|
97
|
+
schema?: object | any, // Schema definition (required if isSchemaNeeded is true, empty {} if false)
|
|
98
|
+
isEncrypted?: boolean, // Whether to encrypt the collection (default: false)
|
|
99
|
+
encryptionKey?: string // Custom encryption key (optional, system generates one if not provided)
|
|
100
|
+
)
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Examples:
|
|
104
|
+
|
|
105
|
+
```javascript
|
|
106
|
+
// Create collection with schema validation
|
|
107
|
+
const collection1 = await db1.createCollection("testCollection", true, schema);
|
|
108
|
+
|
|
109
|
+
// Create collection without schema validation
|
|
110
|
+
const collection2 = await db1.createCollection("testCollection2", false);
|
|
111
|
+
|
|
112
|
+
// Create an encrypted collection with schema validation and default encryption key
|
|
113
|
+
const collection3 = await db1.createCollection(
|
|
114
|
+
"testCollection3",
|
|
115
|
+
true,
|
|
116
|
+
schema,
|
|
117
|
+
true,
|
|
118
|
+
);
|
|
119
|
+
|
|
120
|
+
// Create an encrypted collection with schema validation and custom encryption key
|
|
121
|
+
const collection4 = await db1.createCollection(
|
|
122
|
+
"testCollection4",
|
|
123
|
+
true,
|
|
124
|
+
schema,
|
|
125
|
+
true,
|
|
126
|
+
"myCustomKey",
|
|
127
|
+
);
|
|
128
|
+
|
|
129
|
+
// Create an encrypted collection without schema validation (using empty object for schema)
|
|
130
|
+
const collection5 = await db1.createCollection(
|
|
131
|
+
"testCollection5",
|
|
132
|
+
false,
|
|
133
|
+
{},
|
|
134
|
+
true,
|
|
135
|
+
);
|
|
136
|
+
|
|
137
|
+
// Create an encrypted collection without schema and with custom key
|
|
138
|
+
const collection6 = await db1.createCollection(
|
|
139
|
+
"testCollection6",
|
|
140
|
+
false,
|
|
141
|
+
{},
|
|
142
|
+
true,
|
|
143
|
+
"myCustomKey",
|
|
144
|
+
);
|
|
145
|
+
```
|
|
146
|
+
|
|
84
147
|
### CommonJS Example
|
|
85
148
|
|
|
86
149
|
```javascript
|
|
87
150
|
const { AxioDB, SchemaTypes } = require("axiodb");
|
|
88
151
|
|
|
89
|
-
|
|
90
|
-
|
|
152
|
+
// Create a single AxioDB instance for your entire application
|
|
153
|
+
// This will also start the Web GUI on localhost:27018 (currently under development)
|
|
154
|
+
const db = new AxioDB();
|
|
91
155
|
|
|
92
|
-
|
|
156
|
+
const main = async () => {
|
|
157
|
+
// Create multiple databases under the single instance
|
|
93
158
|
const db1 = await db.createDB("testDB");
|
|
94
|
-
|
|
95
|
-
// Create a database without schema validation
|
|
96
159
|
const db2 = await db.createDB("testDB2", false);
|
|
97
160
|
|
|
98
161
|
// Define a schema
|
|
@@ -102,16 +165,20 @@ const main = async () => {
|
|
|
102
165
|
email: SchemaTypes.string().required().email(),
|
|
103
166
|
};
|
|
104
167
|
|
|
105
|
-
// Create collections
|
|
106
|
-
const
|
|
107
|
-
const collection2 = await db1.createCollection(
|
|
168
|
+
// Create collections with and without schema validation
|
|
169
|
+
const collectionNoSchema = await db1.createCollection(
|
|
108
170
|
"testCollection2",
|
|
109
|
-
|
|
110
|
-
true,
|
|
171
|
+
false,
|
|
111
172
|
);
|
|
112
|
-
const
|
|
173
|
+
const collectionExplicitSchema = await db1.createCollection(
|
|
113
174
|
"testCollection3",
|
|
175
|
+
true,
|
|
176
|
+
schema,
|
|
177
|
+
);
|
|
178
|
+
const collectionWithEncryption = await db1.createCollection(
|
|
179
|
+
"testCollection4",
|
|
114
180
|
schema,
|
|
181
|
+
true,
|
|
115
182
|
"myKey",
|
|
116
183
|
);
|
|
117
184
|
|
|
@@ -196,16 +263,20 @@ const main = async () => {
|
|
|
196
263
|
email: SchemaTypes.string().required().email(),
|
|
197
264
|
};
|
|
198
265
|
|
|
199
|
-
// Create collections
|
|
200
|
-
const
|
|
201
|
-
const collection2 = await db1.createCollection(
|
|
266
|
+
// Create collections with and without schema validation
|
|
267
|
+
const collectionNoSchema = await db1.createCollection(
|
|
202
268
|
"testCollection2",
|
|
203
|
-
|
|
204
|
-
true,
|
|
269
|
+
false,
|
|
205
270
|
);
|
|
206
|
-
const
|
|
271
|
+
const collectionExplicitSchema = await db1.createCollection(
|
|
207
272
|
"testCollection3",
|
|
273
|
+
true,
|
|
274
|
+
schema,
|
|
275
|
+
);
|
|
276
|
+
const collectionWithEncryption = await db1.createCollection(
|
|
277
|
+
"testCollection4",
|
|
208
278
|
schema,
|
|
279
|
+
true,
|
|
209
280
|
"myKey",
|
|
210
281
|
);
|
|
211
282
|
|
|
@@ -406,6 +477,14 @@ await collection1.delete({ age: { $lt: 25 } }).deleteMany();
|
|
|
406
477
|
|
|
407
478
|
### Collection
|
|
408
479
|
|
|
480
|
+
- **`createCollection(name: string, schemaOrBoolean: object | boolean, schemaOrEmpty?: object, crypto?: boolean, key?: string): Promise<Collection>`**
|
|
481
|
+
Creates a collection with optional schema validation and encryption. The parameters are flexible:
|
|
482
|
+
|
|
483
|
+
- If the second parameter is a schema object, schema validation is enabled
|
|
484
|
+
- If the second parameter is a boolean, it determines whether schema validation is enabled
|
|
485
|
+
- For collections without schema but with encryption, pass `false, {}, true` as parameters
|
|
486
|
+
- The encryption key parameter is optional - if not provided, a default key will be generated
|
|
487
|
+
|
|
409
488
|
- **`insert(data: object): Promise<SuccessInterface | ErrorInterface>`**
|
|
410
489
|
Inserts a document into the collection.
|
|
411
490
|
|
|
@@ -93,8 +93,11 @@ class Database {
|
|
|
93
93
|
const totalSize = yield this.folderManager.GetDirectorySize(path_1.default.resolve(this.path));
|
|
94
94
|
if ("data" in collections && "data" in totalSize) {
|
|
95
95
|
const FinalCollections = {
|
|
96
|
+
CurrentPath: this.path,
|
|
97
|
+
RootName: this.name,
|
|
98
|
+
MatrixUnits: "MB",
|
|
96
99
|
TotalCollections: `${collections.data.length} Collections`,
|
|
97
|
-
TotalSize:
|
|
100
|
+
TotalSize: parseInt((totalSize.data / 1024 / 1024).toFixed(4)),
|
|
98
101
|
ListOfCollections: collections.data,
|
|
99
102
|
AllCollectionsPaths: collections.data.map((collection) => path_1.default.join(this.path, collection)),
|
|
100
103
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.operation.js","sourceRoot":"","sources":["../../../source/Operation/Database/database.operation.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"database.operation.js","sourceRoot":"","sources":["../../../source/Operation/Database/database.operation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,uDAAuD;AACvD,8FAA4D;AAC5D,4EAAoD;AACpD,gFAAwD;AACxD,gDAAwB;AAExB,qBAAqB;AACrB,8DAA0D;AAC1D,mFAA0D;AAC1D,mCAAqC;AAOrC;;GAEG;AACH,MAAqB,QAAQ;IAO3B,YAAY,IAAY,EAAE,IAAY;QACpC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,IAAI,qBAAW,EAAE,CAAC;QACrC,IAAI,CAAC,aAAa,GAAG,IAAI,uBAAa,EAAE,CAAC;QACzC,IAAI,CAAC,cAAc,GAAG,IAAI,yBAAc,EAAE,CAAC;IAC7C,CAAC;IAED;;;;;;;;OAQG;IACU,gBAAgB;6DAC3B,cAAsB,EACtB,iBAA0B,KAAK,EAC/B,MAAoB,EACpB,SAAkB,KAAK,EACvB,GAAwB;YAExB,yCAAyC;YACzC,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAC/D,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CACrC,CAAC;YACF,MAAM,cAAc,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YAE5D,8CAA8C;YAC9C,IAAI,gBAAgB,CAAC,UAAU,KAAK,oBAAW,CAAC,EAAE,EAAE,CAAC;gBACnD,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CAAC,uBAAuB,cAAc,EAAE,CAAC,CAAC;YACvD,CAAC;YAED,iDAAiD;YACjD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACpB,MAAM,iBAAiB,GAAG,IAAI,4BAAY,CAAC,GAAG,CAAC,CAAC;gBAChD,MAAM,UAAU,GAAG,IAAI,8BAAU,CAC/B,cAAc,EACd,cAAc,EACd,cAAc,EACd,MAAM,EACN,MAAM,EACN,iBAAiB,EACjB,GAAG,CACJ,CAAC;gBACF,OAAO,UAAU,CAAC;YACpB,CAAC;iBAAM,CAAC;gBACN,MAAM,UAAU,GAAG,IAAI,8BAAU,CAC/B,cAAc,EACd,cAAc,EACd,cAAc,EACd,MAAM,CACP,CAAC;gBACF,OAAO,UAAU,CAAC;YACpB,CAAC;QACH,CAAC;KAAA;IAED;;;;;OAKG;IACU,gBAAgB,CAC3B,cAAsB;;YAEtB,MAAM,cAAc,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;YAC5D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;YACxE,IAAI,MAAM,CAAC,UAAU,KAAK,oBAAW,CAAC,EAAE,EAAE,CAAC;gBACzC,MAAM,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;gBACzD,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAChC,eAAe,cAAc,uBAAuB,CACrD,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAC9B,eAAe,cAAc,iBAAiB,CAC/C,CAAC;YACJ,CAAC;QACH,CAAC;KAAA;IAED;;;;OAIG;IACU,iBAAiB;;YAC5B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CACzD,cAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CACxB,CAAC;YACF,IAAI,MAAM,IAAI,WAAW,IAAI,MAAM,IAAI,SAAS,EAAE,CAAC;gBACjD,MAAM,gBAAgB,GAAyB;oBAC7C,WAAW,EAAE,IAAI,CAAC,IAAI;oBACtB,QAAQ,EAAE,IAAI,CAAC,IAAI;oBACnB,WAAW,EAAE,IAAI;oBACjB,gBAAgB,EAAE,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,cAAc;oBAC1D,SAAS,EAAE,QAAQ,CAAC,CAAC,SAAS,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBAC9D,iBAAiB,EAAE,WAAW,CAAC,IAAI;oBACnC,mBAAmB,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,UAAkB,EAAE,EAAE,CAC/D,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CACjC;iBACF,CAAC;gBACF,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;KAAA;CACF;AAnHD,2BAmHC"}
|
|
@@ -110,7 +110,10 @@ class AxioDB {
|
|
|
110
110
|
// check if all data is returned
|
|
111
111
|
if ("data" in totalDatabases && "data" in totalSize) {
|
|
112
112
|
const FinalDatabaseInfo = {
|
|
113
|
-
|
|
113
|
+
CurrentPath: this.currentPATH,
|
|
114
|
+
RootName: this.RootName,
|
|
115
|
+
MatrixUnits: "MB",
|
|
116
|
+
TotalSize: parseInt((totalSize.data / 1024 / 1024).toFixed(4)),
|
|
114
117
|
TotalDatabases: `${totalDatabases.data.length} Databases`,
|
|
115
118
|
ListOfDatabases: totalDatabases.data,
|
|
116
119
|
AllDatabasesPaths: totalDatabases.data.map((db) => path_1.default.join(this.currentPATH, db)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Indexation.operation.js","sourceRoot":"","sources":["../../source/Operation/Indexation.operation.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Indexation.operation.js","sourceRoot":"","sources":["../../source/Operation/Indexation.operation.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
const promises_1 = __importDefault(require("fs/promises"));
|
|
16
16
|
const fs_1 = __importDefault(require("fs"));
|
|
17
|
+
const child_process_1 = require("child_process");
|
|
18
|
+
const util_1 = require("util");
|
|
19
|
+
const execAsync = (0, util_1.promisify)(child_process_1.exec);
|
|
17
20
|
// Import Helpers
|
|
18
21
|
const response_helper_1 = __importDefault(require("../Helper/response.helper"));
|
|
19
22
|
class FolderManager {
|
|
@@ -141,11 +144,12 @@ class FolderManager {
|
|
|
141
144
|
GetDirectorySize(path) {
|
|
142
145
|
return __awaiter(this, void 0, void 0, function* () {
|
|
143
146
|
try {
|
|
144
|
-
const
|
|
145
|
-
|
|
147
|
+
const { stdout } = yield execAsync(`du -sb ${path}`);
|
|
148
|
+
const size = parseInt(stdout.split("\t")[0], 10);
|
|
149
|
+
return this.responseHelper.Success(size);
|
|
146
150
|
}
|
|
147
|
-
catch (
|
|
148
|
-
return this.responseHelper.Error(`Failed to get directory size: ${
|
|
151
|
+
catch (err) {
|
|
152
|
+
return this.responseHelper.Error(`Failed to get directory size: ${err}`);
|
|
149
153
|
}
|
|
150
154
|
});
|
|
151
155
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FolderManager.js","sourceRoot":"","sources":["../../source/Storage/FolderManager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,2DAAqC;AACrC,4CAAgC;
|
|
1
|
+
{"version":3,"file":"FolderManager.js","sourceRoot":"","sources":["../../source/Storage/FolderManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
export interface FinalCollectionsInfo {
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
CurrentPath: string;
|
|
3
|
+
RootName: string;
|
|
4
|
+
MatrixUnits: string;
|
|
5
|
+
TotalSize: number;
|
|
6
|
+
TotalCollections: number | string;
|
|
4
7
|
ListOfCollections: string[];
|
|
5
8
|
AllCollectionsPaths: string[];
|
|
6
9
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "axiodb",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.16.53",
|
|
4
4
|
"description": "A blazing-fast, lightweight, and scalable nodejs package based DBMS for modern application. Supports schemas, encryption, and advanced query capabilities.",
|
|
5
5
|
"main": "./lib/config/DB.js",
|
|
6
6
|
"types": "./lib/config/DB.d.ts",
|
|
File without changes
|