A Node.js application for managing in-memory and local storage with RESTful API endpoints.
This project provides a basic API for interacting with both in-memory storage and file-based local storage. It supports setting, getting, removing, and clearing data. It includes an Express-based server that exposes these functionalities via HTTP endpoints.
─➤ localcache-meisam -h
Options:
--version Show version number [boolean]
--ip IP address [string] [default: "0.0.0.0"]
-p, --port PORT [number] [default: 3000]
--dbDir, --db Data Storage Directory [string] [default: "DATA"]
--debug Show debug logs [boolean] [default: false]
-h, --help Show help [boolean]
To get started, you have two options:
-
Clone the repository and install dependencies:
git clone https://github.com/maanimis/localcache-meisam.git cd localcache-meisam npm install
-
Install globally using npm:
npm install -g localcache-meisam
This will install the package globally and make the
localcache-meisam
command available.
You can use this storage manager as a package in your Node.js project. Follow these steps to integrate it:
-
Install the package:
npm install localcache-meisam
-
Import and use the package:
import { localCache } from 'localcache-meisam'; const { LocalStorage, InMemoryStorage } = localCache; // Example for InMemoryStorage const inMemoryStorage = new InMemoryStorage(); inMemoryStorage.setItem('key1', 'value1'); console.log(inMemoryStorage.getItem('key1')); // Output: 'value1' // Example for LocalStorage const localStorage = new LocalStorage('path/to/storage'); localStorage.setItem('key1', 'value1'); console.log(localStorage.getItem('key1')); // Output: 'value1'
You can also use this as a global utility. Follow these steps to use it directly from the command line.
-
Install globally using npm:
npm install -g localcache-meisam
-
Run the application:
You can start the server with the following command:
localcache-meisam
The server will start running at
http://localhost:PORT
.
-
Set Memory Item
POST /memory/set
Body:
{ "key": "someKey", "value": "someValue" }
-
Get Memory Items
GET /memory/get/:keys
Example:
/memory/get/key1,key2
-
Set Local Item
POST /local/set
Body:
{ "key": "someKey", "value": "someValue" }
-
Get Local Item
GET /local/get/:keys
Example:
/local/get/key1,key2
-
Remove Local Item
DELETE /local/remove/:keys
Example:
/local/remove/key1,key2
-
Clear Local Storage
DELETE /local/clear
Contributions are welcome! Please feel free to submit a Pull Request.