1.3.0 • Published 1 month ago
@storecraft/database-mysql v1.3.0
Storecraft MySQL
driver
Official MySQL
driver for StoreCraft
using mysql2
package.
npm i @storecraft/database-mysql
usage
import 'dotenv/config';
import http from "node:http";
import { App } from '@storecraft/core'
import { NodePlatform } from '@storecraft/core/platform/node';
import { NodeLocalStorage } from '@storecraft/core/storage/node'
import { MySQL } from '@storecraft/database-mysql';
import { migrateToLatest } from '@storecraft/database-sql-base/migrate.js'
const app = new App(
{
auth_admins_emails: ['admin@sc.com'],
}
)
.withPlatform(new NodePlatform())
.withDatabase(
new MySQL(
{
pool_options: {
database: process.env.MYSQL_DATABASE,
host: process.env.MYSQL_HOST,
port: parseInt(process.env.MYSQL_PORT),
user: process.env.MYSQL_USER,
password: process.env.MYSQL_PASSWORD,
}
}
)
)
.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');
}
);
Storecraft will search the following env
variables
MYSQL_USER=root
MYSQL_PASSWORD=password
MYSQL_DATABASE=main
MYSQL_PORT=3306
MYSQL_HOST=localhost
So, you can instantiate with empty config
.withDatabase(
new MySQL()
)
Testing Locally
- First start a
mysql
server First, make sure you havedocker
installed, Then, run
npm run database-mysql:docker-compose-up
- create Environment
create .env
file with
MYSQL_USER=root
MYSQL_PASSWORD=password
MYSQL_DATABASE=main
MYSQL_PORT=3306
MYSQL_HOST=localhost
- Run
tests/runner.test.js
npm run database-mysql:test
Author: Tomer Shalev <tomer.shalev@gmail.com>
1.0.19
2 months ago
1.0.18
3 months ago
1.0.17
3 months ago
1.0.16
3 months ago
1.2.5
2 months ago
1.3.0
1 month ago
1.0.15
3 months ago
1.0.14
3 months ago
1.0.13
4 months ago
1.0.12
4 months ago
1.0.9
5 months ago
1.0.8
6 months ago
1.0.7
6 months ago
1.0.6
8 months ago
1.0.11
4 months ago
1.0.10
5 months ago
1.0.5
9 months ago
1.0.4
9 months ago
1.0.3
9 months ago
1.0.2
9 months ago
1.0.1
10 months ago