Skip to content

Commit 3920bce

Browse files
committed
update pattern for v3 and refactoring code to new code
1 parent 40c7b0a commit 3920bce

File tree

12 files changed

+10280
-258
lines changed

12 files changed

+10280
-258
lines changed

.prettierrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@
66
"semi": false,
77
"bracketSpacing": true,
88
"proseWrap": "always",
9-
"printWidth": 130,
9+
"printWidth": 160,
1010
"quoteProps": "consistent"
1111
}

README.md

Lines changed: 110 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -26,21 +26,20 @@ $ npm install node-disk-storage -S or yarn add node-disk-storage -S
2626

2727
+ **minSize** limit data size, before saving into disk, default value to **1MB**
2828
+ **maxSize** limit data size, before saving into disk, default value to **25MB**
29-
+ **compress** compress data using gzip, before saving into disk, default value to false
3029

31-
- #### set(key: string, value: string): boolean | undefined
30+
- #### set(key: string, value: string): Promise<boolean | undefined>
3231
set data using key and value, into disk
3332

34-
- #### get(key: string): any | undefined
33+
- #### get(key: string): Promise<any | undefined>
3534
get specific data using key, after saving data into disk
3635

37-
- #### remove(key: string): boolean | undefined
36+
- #### remove(key: string): Promise<boolean | undefined>
3837
remove specific data already exist using key, after saving data into disk
3938

40-
- #### clear(): boolean | undefined
39+
- #### clear(): Promise<boolean | undefined>
4140
clear all keys exist, after saving data into disk
4241

43-
- #### keys(): boolean | undefined
42+
- #### keys(): Promise<string[] | undefined>
4443
get all keys exist, after saving data into disk
4544

4645
## Example Usage
@@ -52,24 +51,65 @@ $ npm install node-disk-storage -S or yarn add node-disk-storage -S
5251

5352
const nds = new NodeDiskStorage()
5453

55-
nds.set("name", "joh doe")
56-
nds.get("name")
57-
nds.keys()
58-
nds.remove("name")
59-
nds.clear()
54+
;(async () => {
55+
await nds.set("user", {
56+
id: 1,
57+
name: 'Leanne Graham',
58+
username: 'Bret',
59+
60+
address: {
61+
street: 'Kulas Light',
62+
suite: 'Apt. 556',
63+
city: 'Gwenborough',
64+
zipcode: '92998-3874',
65+
geo: { lat: '-37.3159', lng: '81.1496' }
66+
},
67+
phone: '1-770-736-8031 x56442',
68+
website: 'hildegard.org',
69+
company: {
70+
name: 'Romaguera-Crona',
71+
catchPhrase: 'Multi-layered client-server neural-net',
72+
bs: 'harness real-time e-markets'
73+
}
74+
})
75+
await nds.get("user")
76+
await nds.keys()
77+
await nds.remove("user")
78+
await nds.clear()
79+
})()
6080
```
6181
- ##### Example Usage Using CommonJs With JavaScript And Options
6282

6383
```javascript
6484
const { NodeDiskStorage } = require('node-disk-storage')
6585

66-
const nds = new NodeDiskStorage({ minSize: 5, maxSize: 30, compress: true })
67-
68-
nds.set("name", "joh doe")
69-
nds.get("name")
70-
nds.keys()
71-
nds.remove("name")
72-
nds.clear()
86+
const nds = new NodeDiskStorage({ minSize: 5, maxSize: 30 })
87+
88+
;(async () => {
89+
await nds.set("user", {
90+
id: 1,
91+
name: 'Leanne Graham',
92+
username: 'Bret',
93+
94+
address: {
95+
street: 'Kulas Light',
96+
suite: 'Apt. 556',
97+
city: 'Gwenborough',
98+
zipcode: '92998-3874',
99+
geo: { lat: '-37.3159', lng: '81.1496' }
100+
},
101+
phone: '1-770-736-8031 x56442',
102+
website: 'hildegard.org',
103+
company: {
104+
name: 'Romaguera-Crona',
105+
catchPhrase: 'Multi-layered client-server neural-net',
106+
bs: 'harness real-time e-markets'
107+
}
108+
})
109+
await nds.get("user")
110+
await nds.keys()
111+
await nds.remove("user")
112+
await nds.clear()
73113
```
74114
75115
- ##### Example Usage Using ESM With JavaScript
@@ -79,25 +119,65 @@ $ npm install node-disk-storage -S or yarn add node-disk-storage -S
79119

80120
const nds = new NodeDiskStorage()
81121

82-
nds.set("name", "joh doe")
83-
nds.get("name")
84-
nds.keys()
85-
nds.remove("name")
86-
nds.clear()
122+
;(async () => {
123+
await nds.set("user", {
124+
id: 1,
125+
name: 'Leanne Graham',
126+
username: 'Bret',
127+
128+
address: {
129+
street: 'Kulas Light',
130+
suite: 'Apt. 556',
131+
city: 'Gwenborough',
132+
zipcode: '92998-3874',
133+
geo: { lat: '-37.3159', lng: '81.1496' }
134+
},
135+
phone: '1-770-736-8031 x56442',
136+
website: 'hildegard.org',
137+
company: {
138+
name: 'Romaguera-Crona',
139+
catchPhrase: 'Multi-layered client-server neural-net',
140+
bs: 'harness real-time e-markets'
141+
}
142+
})
143+
await nds.get("user")
144+
await nds.keys()
145+
await nds.remove("user")
146+
await nds.clear()
87147
```
88148
89149
- ##### Example Usage Using ESM With JavaScript And Options
90150
91151
```javascript
92152
import { NodeDiskStorage } from 'node-disk-storage'
93153

94-
const nds = new NodeDiskStorage({ minSize: 5, maxSize: 30, compress: true })
95-
96-
nds.set("name", "joh doe")
97-
nds.get("name")
98-
nds.keys()
99-
nds.remove("name")
100-
nds.clear()
154+
const nds = new NodeDiskStorage({ minSize: 5, maxSize: 30 })
155+
156+
;(async () => {
157+
await nds.set("user", {
158+
id: 1,
159+
name: 'Leanne Graham',
160+
username: 'Bret',
161+
162+
address: {
163+
street: 'Kulas Light',
164+
suite: 'Apt. 556',
165+
city: 'Gwenborough',
166+
zipcode: '92998-3874',
167+
geo: { lat: '-37.3159', lng: '81.1496' }
168+
},
169+
phone: '1-770-736-8031 x56442',
170+
website: 'hildegard.org',
171+
company: {
172+
name: 'Romaguera-Crona',
173+
catchPhrase: 'Multi-layered client-server neural-net',
174+
bs: 'harness real-time e-markets'
175+
}
176+
})
177+
await nds.get("user")
178+
await nds.keys()
179+
await nds.remove("user")
180+
await nds.clear()
101181
```
102182
103183
## Testing

README_v2.md

Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
# Node Disk Storage (NDS)
2+
3+
[![Build Status](https://app.travis-ci.com/restuwahyu13/node-disk-storage.svg?token=TJCjdtb3tZAkAUnGPRjB&branch=main)](https://app.travis-ci.com/restuwahyu13/node-disk-storage) [![Coverage Status](https://coveralls.io/repos/github/restuwahyu13/node-disk-storage/badge.svg?branch=main)](https://coveralls.io/github/restuwahyu13/node-disk-storage?branch=main) [![CodeFactor](https://www.codefactor.io/repository/github/restuwahyu13/node-disk-storage/badge)](https://www.codefactor.io/repository/github/restuwahyu13/node-disk-storage) [![codebeat badge](https://codebeat.co/badges/5611b53e-e00a-40c1-bab2-b9a8f5592b33)](https://codebeat.co/projects/github.colasdn.workers.dev-restuwahyu13-node-disk-storage-main) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/d74af409b71641fb96484df3dc582365)](https://www.codacy.com/gh/restuwahyu13/node-disk-storage/dashboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=restuwahyu13/node-disk-storage&amp;utm_campaign=Badge_Grade)![node-current](https://img.shields.io/node/v/node-disk-storage?style=flat-square) ![npm](https://img.shields.io/npm/dm/node-disk-storage) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](https://github.com/restuwahyu13/node-disk-storage/blob/main/CONTRIBUTING.md)
4+
5+
**node-disk-storage** a simple fast and secure `local storage` for `nodejs`, you can store any data using key and value.
6+
7+
<img src="images/nds-work.png" alt="example-nds-work"/>
8+
9+
- [Node Disk Storage (NDS)](#node-disk-storage-nds)
10+
- [Installation](#installation)
11+
- [API Reference](#api-reference)
12+
- [Example Usage](#example-usage)
13+
- [Testing](#testing)
14+
- [Bugs](#bugs)
15+
- [Contributing](#contributing)
16+
- [License](#license)
17+
18+
## Installation
19+
20+
```bash
21+
$ npm install node-disk-storage -S or yarn add node-disk-storage -S
22+
```
23+
## API Reference
24+
25+
- #### Node Disk Storage Options Property
26+
27+
+ **minSize** limit data size, before saving into disk, default value to **1MB**
28+
+ **maxSize** limit data size, before saving into disk, default value to **25MB**
29+
+ **compress** compress data using gzip, before saving into disk, default value to false
30+
31+
- #### set(key: string, value: string): boolean | undefined
32+
set data using key and value, into disk
33+
34+
- #### get(key: string): any | undefined
35+
get specific data using key, after saving data into disk
36+
37+
- #### remove(key: string): boolean | undefined
38+
remove specific data already exist using key, after saving data into disk
39+
40+
- #### clear(): boolean | undefined
41+
clear all keys exist, after saving data into disk
42+
43+
- #### keys(): boolean | undefined
44+
get all keys exist, after saving data into disk
45+
46+
## Example Usage
47+
48+
- ##### Example Usage Using CommonJs With JavaScript
49+
50+
```javascript
51+
const { NodeDiskStorage } = require('node-disk-storage')
52+
53+
const nds = new NodeDiskStorage()
54+
55+
nds.set("name", "joh doe")
56+
nds.get("name")
57+
nds.keys()
58+
nds.remove("name")
59+
nds.clear()
60+
```
61+
- ##### Example Usage Using CommonJs With JavaScript And Options
62+
63+
```javascript
64+
const { NodeDiskStorage } = require('node-disk-storage')
65+
66+
const nds = new NodeDiskStorage({ minSize: 5, maxSize: 30, compress: true })
67+
68+
nds.set("name", "joh doe")
69+
nds.get("name")
70+
nds.keys()
71+
nds.remove("name")
72+
nds.clear()
73+
```
74+
75+
- ##### Example Usage Using ESM With JavaScript
76+
77+
```javascript
78+
import { NodeDiskStorage } from 'node-disk-storage'
79+
80+
const nds = new NodeDiskStorage()
81+
82+
nds.set("name", "joh doe")
83+
nds.get("name")
84+
nds.keys()
85+
nds.remove("name")
86+
nds.clear()
87+
```
88+
89+
- ##### Example Usage Using ESM With JavaScript And Options
90+
91+
```javascript
92+
import { NodeDiskStorage } from 'node-disk-storage'
93+
94+
const nds = new NodeDiskStorage({ minSize: 5, maxSize: 30, compress: true })
95+
96+
nds.set("name", "joh doe")
97+
nds.get("name")
98+
nds.keys()
99+
nds.remove("name")
100+
nds.clear()
101+
```
102+
103+
## Testing
104+
105+
- Testing Via Local
106+
107+
```sh
108+
npm test or make test
109+
```
110+
111+
- Testing Via Local And Build
112+
113+
```sh
114+
make build
115+
```
116+
117+
- Testing Via Docker
118+
119+
```sh
120+
docker build -t node-disk-storage or make dkb tag=node-disk-storage
121+
```
122+
123+
## Bugs
124+
125+
For information on bugs related to package libraries, please visit [here](https://github.com/restuwahyu13/node-disk-storage/issues)
126+
127+
## Contributing
128+
129+
Want to make **node-disk-storage** more perfect ? Let's contribute and follow the [contribution guide.](https://github.com/restuwahyu13/node-disk-storage/blob/main/CONTRIBUTING.md)
130+
131+
## License
132+
133+
- [MIT License](https://github.com/restuwahyu13/node-disk-storage/blob/main/LICENSE.md)
134+
135+
<p align="right" style="padding: 5px; border-radius: 100%; background-color: red; font-size: 2rem;">
136+
<b><a href="#node-disk-storage-nds">BACK TO TOP</a></b>
137+
</p>

0 commit comments

Comments
 (0)