feat(db): create schema & config files
This commit is contained in:
parent
7879167b13
commit
93b90dc1c4
|
@ -0,0 +1,10 @@
|
||||||
|
import { defineConfig } from 'drizzle-kit';
|
||||||
|
|
||||||
|
export default defineConfig({
|
||||||
|
dialect: 'sqlite',
|
||||||
|
schema: './src/db/schema.ts',
|
||||||
|
out: './drizzle',
|
||||||
|
dbCredentials: {
|
||||||
|
url: './data/db.sqlite',
|
||||||
|
},
|
||||||
|
});
|
|
@ -0,0 +1,10 @@
|
||||||
|
import { drizzle } from 'drizzle-orm/better-sqlite3';
|
||||||
|
import Database from 'better-sqlite3';
|
||||||
|
import * as schema from './schema';
|
||||||
|
|
||||||
|
const sqlite = new Database('data/db.sqlite');
|
||||||
|
const db = drizzle(sqlite, {
|
||||||
|
schema: schema,
|
||||||
|
});
|
||||||
|
|
||||||
|
export default db;
|
|
@ -0,0 +1,19 @@
|
||||||
|
import { text, integer, sqliteTable } from 'drizzle-orm/sqlite-core';
|
||||||
|
|
||||||
|
export const messages = sqliteTable('messages', {
|
||||||
|
id: integer('id').primaryKey(),
|
||||||
|
content: text('content').notNull(),
|
||||||
|
chatId: text('chatId').notNull(),
|
||||||
|
messageId: text('messageId').notNull(),
|
||||||
|
role: text('type', { enum: ['assistant', 'user'] }),
|
||||||
|
metadata: text('metadata', {
|
||||||
|
mode: 'json',
|
||||||
|
}),
|
||||||
|
});
|
||||||
|
|
||||||
|
export const chats = sqliteTable('chats', {
|
||||||
|
id: text('id').primaryKey(),
|
||||||
|
title: text('title').notNull(),
|
||||||
|
createdAt: text('createdAt').notNull(),
|
||||||
|
focusMode: text('focusMode').notNull(),
|
||||||
|
});
|
Loading…
Reference in New Issue