#!/usr/bin/env node // Database setup script for Reason Flow require('dotenv').config(); const { setupDatabase, getDatabaseInfo } = require('./server/utils/databaseManager'); const { checkDatabaseStatus } = require('./server/utils/databaseInit'); const main = async () => { console.log('šŸš€ Reason Flow Database Setup'); console.log('==============================\n'); try { // Check if database is accessible console.log('1. Checking database connection...'); const connected = await checkDatabaseStatus(); if (!connected) { console.error('āŒ Database connection failed. Please check your database configuration.'); console.error(' Make sure PostgreSQL is running and your environment variables are set.'); process.exit(1); } console.log('āœ… Database connection successful\n'); // Setup database console.log('2. Setting up database schema...'); const setup = await setupDatabase({ force: false, seed: true, migrations: true }); if (!setup) { console.error('āŒ Database setup failed'); process.exit(1); } console.log('āœ… Database setup completed\n'); // Show database info console.log('3. Database information:'); await getDatabaseInfo(); console.log('\nšŸŽ‰ Database setup completed successfully!'); console.log('\nNext steps:'); console.log('1. Start the server: npm run dev'); console.log('2. Test the API: curl http://localhost:8000/api/health'); console.log('3. Check model status: curl http://localhost:8000/api/models/status'); } catch (error) { console.error('\nāŒ Setup failed:', error.message); process.exit(1); } }; main();