1.3.1 • Published 5 months ago
@storecraft/database-sql-base v1.3.1
Storecraft SQL driver
Official SQL driver for StoreCraft with the dialects abstracted with Kysely or your own drivers.
npm i @storecraft/database-sql-baseusage
import 'dotenv/config';
import http from "node:http";
import { App } from '@storecraft/core'
import { NodePlatform } from '@storecraft/core/platform/node';
import { SQL } from '@storecraft/database-sql-base'
import { migrateToLatest } from '@storecraft/database-sql-base/migrate.js'
import { NodeLocalStorage } from '@storecraft/core/storage/node'
const app = new App(
{
auth_admins_emails: ['admin@sc.com'],
auth_secret_access_token: 'auth_secret_access_token',
auth_secret_refresh_token: 'auth_secret_refresh_token'
}
)
.withPlatform(new NodePlatform())
.withDatabase(
new SQL({
dialect: sqlite_dialect,
dialect_type: 'SQLITE'
})
)
.withStorage(new NodeLocalStorage('storage'))
.init();
await migrateToLatest(app.__show_me_everything.db, false);
await app.__show_me_everything.vector_store.createVectorIndex();
http.createServer(app.handler).listen(
8000,
() => {
app.print_banner('http://localhost:8000');
}
); Testing Locally
SQLite
- Simply
runner.sqlite-local.test.js
npm run test:sqlitePostgres
- First setup a
postgresserver
docker pull postgres
docker run --name some-postgres -e POSTGRES_USER=admin -e POSTGRES_PASSWORD=admin \
-e PGDATA=/var/lib/postgresql/data/pgdata \
-v $(pwd):/var/lib/postgresql/data \
-p 5432:5432 -d postgres- create Environment
create
.envfile with
POSTGRES_USER='user'
POSTGRES_PASSWORD='password'
POSTGRES_PORT=5432
POSTGRES_HOST='localhost'- Run
runner.postgres-local.test.js
npm run test:postgresMySQL
- First setup a
mysqlserver
docker pull mysql
docker run --name mysql \
-v $(pwd):/etc/mysql/conf.d \
-v /my/own/datadir:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=admin -e MYSQL_ROOT_HOST=localhost \
-e MYSQL_DATABASE=main -e MYSQL_USER=admin -e MYSQL_PASSWORD=admin \
-p 8080:3306 -d mysql- create Environment
create
.envfile with
MYSQL_USER='root'
MYSQL_ROOT_PASSWORD='password'
MYSQL_PORT=8080
MYSQL_HOST='localhost'- Run
runner.mysql-local.test.js
npm run test:mysqlMSSQL (Currently NOT SUPPORTED, waiting for votes on that one)
Work in progress, i will probably not continue with this.
- First setup a
mysqlserver
docker pull mcr.microsoft.com/mssql/server
# use this For OSX with M1 chips
docker pull mcr.microsoft.com/azure-sql-edge:latest
docker run --name some-mssql \
-e ACCEPT_EULA=Y -e MSSQL_SA_PASSWORD='Abcd1234!?' \
-v $(pwd):/var/opt/mssql \
-p 1433:1433 \
-d mcr.microsoft.com/azure-sql-edge:latest- create Environment
create
.envfile with
MYSQL_USER='root'
MYSQL_ROOT_PASSWORD='password'
MYSQL_PORT=8080
MYSQL_HOST='localhost'- Run
runner.mysql-local.test.js
npm run test:mysqlAuthor: Tomer Shalev <tomer.shalev@gmail.com>1.0.19
7 months ago
1.0.18
7 months ago
1.0.17
7 months ago
1.0.16
7 months ago
1.2.5
6 months ago
1.3.1
5 months ago
1.3.0
6 months ago
1.0.22
7 months ago
1.0.21
7 months ago
1.0.20
7 months ago
1.0.24
7 months ago
1.0.23
7 months ago
1.0.15
7 months ago
1.0.14
7 months ago
1.0.13
8 months ago
1.0.12
8 months ago
1.0.9
9 months ago
1.0.8
9 months ago
1.0.7
10 months ago
1.0.6
12 months ago
1.0.11
9 months ago
1.0.10
9 months ago
1.0.5
1 year ago
1.0.4
1 year ago
1.0.3
1 year ago
1.0.2
1 year ago
1.0.1
1 year ago
1.0.0
1 year ago