From a77a71b883e861d7e26e058bbbc9b513770eb970 Mon Sep 17 00:00:00 2001 From: Ali Mihandoost Date: Mon, 2 Sep 2024 14:38:08 +0330 Subject: [PATCH] feat: Add Alwatr Store package This commit adds the Alwatr Store package, which is an extremely fast and compact JSON-based database that operates in memory. It includes a JSON file backup and serves over the highly accelerated Nginx. The package provides a convenient and efficient solution for data storage and retrieval. For more information, please visit [Alwatr Store](https://github.com/Alwatr/store#readme). --- packages/store/README.md | 5 +++ packages/store/package.json | 75 ++++++++++++++++++++++++++++++++++++ packages/store/src/main.ts | 3 ++ packages/store/tsconfig.json | 10 +++++ 4 files changed, 93 insertions(+) create mode 100644 packages/store/README.md create mode 100644 packages/store/package.json create mode 100644 packages/store/src/main.ts create mode 100644 packages/store/tsconfig.json diff --git a/packages/store/README.md b/packages/store/README.md new file mode 100644 index 00000000..22b19669 --- /dev/null +++ b/packages/store/README.md @@ -0,0 +1,5 @@ +# Alwatr Store + +Extremely fast and compact JSON-based database that operates in memory, includes a JSON file backup, and serve over the highly accelerated Nginx. + +## for more information please visit [Alwatr Store](https://github.com/Alwatr/store#readme) diff --git a/packages/store/package.json b/packages/store/package.json new file mode 100644 index 00000000..f06e4a64 --- /dev/null +++ b/packages/store/package.json @@ -0,0 +1,75 @@ +{ + "name": "@alwatr/store", + "version": "7.0.0-beta.1", + "description": "Extremely fast and compact JSON-based database that operates in memory, includes a JSON file backup, and serve over the highly accelerated Nginx.", + "author": "S. Ali Mihandoost ", + "keywords": [ + "database", + "storage", + "json", + "nosql", + "no-sql", + "data", + "data-storage", + "file", + "typescript", + "esm", + "alwatr" + ], + "type": "module", + "main": "./dist/main.cjs", + "module": "./dist/main.mjs", + "types": "./dist/main.d.ts", + "exports": { + ".": { + "types": "./dist/main.d.ts", + "import": "./dist/main.mjs", + "require": "./dist/main.cjs" + } + }, + "license": "MIT", + "files": [ + "**/*.{js,mjs,cjs,map,d.ts,html,md}", + "!demo/**/*" + ], + "publishConfig": { + "access": "public" + }, + "repository": { + "type": "git", + "url": "https://github.com/Alwatr/store", + "directory": "packages/store" + }, + "homepage": "https://github.com/Alwatr/store#readme", + "bugs": { + "url": "https://github.com/Alwatr/store/issues" + }, + "prettier": "@alwatr/prettier-config", + "scripts": { + "b": "yarn run build", + "w": "yarn run watch", + "c": "yarn run clean", + "cb": "yarn run clean && yarn run build", + "d": "yarn run build:es && ALWATR_DEBUG=1 yarn node", + "build": "yarn run build:ts & yarn run build:es", + "build:es": "nano-build --preset=module", + "build:ts": "tsc --build", + "watch": "yarn run watch:ts & yarn run watch:es", + "watch:es": "yarn run build:es --watch", + "watch:ts": "yarn run build:ts --watch --preserveWatchOutput", + "clean": "rm -rfv dist *.tsbuildinfo" + }, + "dependencies": { + "@alwatr/store-engine": "workspace:^", + "@alwatr/store-reference": "workspace:^", + "@alwatr/store-types": "workspace:^" + }, + "devDependencies": { + "@alwatr/nano-build": "^1.3.8", + "@alwatr/prettier-config": "^1.0.4", + "@alwatr/tsconfig-base": "^1.2.0", + "@alwatr/type-helper": "^1.2.5", + "@types/node": "^22.5.1", + "typescript": "^5.5.4" + } +} diff --git a/packages/store/src/main.ts b/packages/store/src/main.ts new file mode 100644 index 00000000..50b4c580 --- /dev/null +++ b/packages/store/src/main.ts @@ -0,0 +1,3 @@ +export * from '@alwatr/store-engine'; +export * from '@alwatr/store-reference'; +export * from '@alwatr/store-types'; diff --git a/packages/store/tsconfig.json b/packages/store/tsconfig.json new file mode 100644 index 00000000..44fe3592 --- /dev/null +++ b/packages/store/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "@alwatr/tsconfig-base/tsconfig.json", + "compilerOptions": { + "rootDir": "src", + "outDir": "dist", + "emitDeclarationOnly": true, + "composite": true + }, + "include": ["src/**/*.ts"] +}