@rankmyseo/storage 0.1.0 → 0.2.0
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 +36 -0
- package/package.json +21 -2
package/README.md
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# @rankmyseo/storage
|
|
2
|
+
|
|
3
|
+
Default storage adapter for [RankMySEO](https://github.com/madebyaris/rankmyseo) — a Drizzle ORM implementation of the `RankStore` port (SQLite today; Postgres/MySQL planned). Server-only.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm i @rankmyseo/storage @rankmyseo/core
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
```ts
|
|
14
|
+
import { createStore } from "@rankmyseo/storage";
|
|
15
|
+
|
|
16
|
+
const store = createStore("sqlite:///path/to/db.sqlite");
|
|
17
|
+
|
|
18
|
+
await store.projects.create({
|
|
19
|
+
id: "project-1",
|
|
20
|
+
tenantId: "tenant-a",
|
|
21
|
+
name: "My Site",
|
|
22
|
+
domain: "example.com",
|
|
23
|
+
});
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
The factory selects the dialect from the connection string. Migrations run per dialect via `drizzle-kit` (or `rankmyseo migrate` from `@rankmyseo/cli`).
|
|
27
|
+
|
|
28
|
+
Not using Drizzle? Implement the `RankStore` port from `@rankmyseo/core` and validate it with `runStoreContractTests()`.
|
|
29
|
+
|
|
30
|
+
## Documentation
|
|
31
|
+
|
|
32
|
+
See the [Wiki → Data Sources / Storage](https://github.com/madebyaris/rankmyseo/wiki).
|
|
33
|
+
|
|
34
|
+
## License
|
|
35
|
+
|
|
36
|
+
Apache-2.0
|
package/package.json
CHANGED
|
@@ -1,9 +1,28 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rankmyseo/storage",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "RankMySEO storage adapters (default: Drizzle SQLite)",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
|
+
"homepage": "https://github.com/madebyaris/rankmyseo#readme",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git+https://github.com/madebyaris/rankmyseo.git",
|
|
11
|
+
"directory": "packages/storage"
|
|
12
|
+
},
|
|
13
|
+
"bugs": {
|
|
14
|
+
"url": "https://github.com/madebyaris/rankmyseo/issues"
|
|
15
|
+
},
|
|
16
|
+
"keywords": [
|
|
17
|
+
"seo",
|
|
18
|
+
"drizzle",
|
|
19
|
+
"sqlite",
|
|
20
|
+
"storage",
|
|
21
|
+
"rankmyseo"
|
|
22
|
+
],
|
|
23
|
+
"engines": {
|
|
24
|
+
"node": ">=20"
|
|
25
|
+
},
|
|
7
26
|
"exports": {
|
|
8
27
|
".": {
|
|
9
28
|
"import": {
|
|
@@ -23,7 +42,7 @@
|
|
|
23
42
|
"better-sqlite3": "^12.4.1",
|
|
24
43
|
"drizzle-orm": "^0.44.7",
|
|
25
44
|
"server-only": "^0.0.1",
|
|
26
|
-
"@rankmyseo/core": "0.
|
|
45
|
+
"@rankmyseo/core": "0.2.0"
|
|
27
46
|
},
|
|
28
47
|
"devDependencies": {
|
|
29
48
|
"@types/better-sqlite3": "^7.6.13",
|