forked from imbytecat/fullstack-starter
23 lines
592 B
TypeScript
23 lines
592 B
TypeScript
import { Database } from 'bun:sqlite'
|
|
import { mkdir } from 'node:fs/promises'
|
|
|
|
// Ensure data directory exists
|
|
await mkdir('./data', { recursive: true })
|
|
|
|
const db = new Database('./data/app.db', { create: true })
|
|
db.exec('PRAGMA journal_mode = WAL;')
|
|
|
|
// Create todo table
|
|
db.exec(`
|
|
CREATE TABLE IF NOT EXISTS todo (
|
|
id TEXT PRIMARY KEY,
|
|
title TEXT NOT NULL,
|
|
completed INTEGER NOT NULL DEFAULT 0,
|
|
created_at INTEGER NOT NULL DEFAULT (unixepoch()),
|
|
updated_at INTEGER NOT NULL DEFAULT (unixepoch())
|
|
);
|
|
`)
|
|
|
|
console.log('Database initialized successfully!')
|
|
db.close()
|