@storecraft/database-postgres
v1.3.0
Published
Official Postgres Database driver for storecraft
Maintainers
Readme
Storecraft Postgres driver
Official Postgres driver for StoreCraft using pg package.
npm i @storecraft/database-postgresusage
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 { Postgres } from '@storecraft/database-postgres';
import { migrateToLatest } from '@storecraft/database-sql-base/migrate.js'
const app = new App(
{
auth_admins_emails: ['[email protected]'],
}
)
.withPlatform(new NodePlatform())
.withDatabase(
new Postgres({
pool_config: {
host: process.env.POSTGRES_HOST,
port: parseInt(process.env.POSTGRES_PORT),
user: process.env.POSTGRES_USER,
password: process.env.POSTGRES_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
POSTGRES_USER='admin'
POSTGRES_PASSWORD='admin'
POSTGRES_PORT=6432
POSTGRES_HOST='localhost'So, you can instantiate with empty config
.withDatabase(
new Postgres()
)Testing Locally
- First start a
postgresserver First, make sure you havedockerinstalled, Then, run
npm run database-postgres:docker-compose-up- create Environment
create .env file with
POSTGRES_USER='admin'
POSTGRES_PASSWORD='admin'
POSTGRES_PORT=6432
POSTGRES_HOST='localhost'- Run
tests/runner.test.js
npm run database-postgres:testAuthor: Tomer Shalev <[email protected]>