Skip to content

Commit aac4e60

Browse files
committed
backend template
1 parent 7195e06 commit aac4e60

File tree

5 files changed

+2467
-79
lines changed

5 files changed

+2467
-79
lines changed
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import sqlite3 from 'sqlite3';
2+
import { open } from 'sqlite';
3+
import { logger } from './logger';
4+
import path from 'path';
5+
import fs from 'fs';
6+
7+
const dbPath = path.join(__dirname, '../database.sqlite');
8+
9+
export const initializeDatabase = async () => {
10+
try {
11+
// Ensure directory exists
12+
const dbDir = path.dirname(dbPath);
13+
logger.info(dbDir);
14+
if (!fs.existsSync(dbDir)) {
15+
fs.mkdirSync(dbDir, { recursive: true });
16+
}
17+
18+
// Open the database
19+
const db = await open({
20+
filename: dbPath,
21+
driver: sqlite3.Database,
22+
});
23+
24+
// Enable foreign keys
25+
await db.exec('PRAGMA foreign_keys = ON');
26+
27+
logger.info('Database initialized successfully');
28+
return db;
29+
} catch (error) {
30+
logger.error('Database initialization failed', error);
31+
throw error;
32+
}
33+
};

backend/template/template-backend/index.js

Whitespace-only changes.

0 commit comments

Comments
 (0)