const Database = require('better-sqlite3'); const path = require('path'); const dbPath = path.join(__dirname, 'database.sqlite'); const db = new Database(dbPath); // Initialize tables db.exec(` CREATE TABLE IF NOT EXISTS documents ( id INTEGER PRIMARY KEY AUTOINCREMENT, title TEXT NOT NULL, original_path TEXT NOT NULL, processed_path TEXT NOT NULL, created_at DATETIME DEFAULT CURRENT_TIMESTAMP ); CREATE TABLE IF NOT EXISTS users ( id INTEGER PRIMARY KEY AUTOINCREMENT, username TEXT UNIQUE NOT NULL, password TEXT NOT NULL ); `); // Create default admin user if not exists // The password here is a hash for "123456" const checkUser = db.prepare('SELECT * FROM users WHERE username = ?').get('admin'); if (!checkUser) { const bcrypt = require('bcryptjs'); const salt = bcrypt.genSaltSync(10); const hash = bcrypt.hashSync('123456', salt); db.prepare('INSERT INTO users (username, password) VALUES (?, ?)').run('admin', hash); } module.exports = db;