✨ Компактные hero секции и улучшенная инициализация БД
🎨 UI улучшения: - Уменьшена высота синих панелей с 100vh до 70vh на главной - Добавлен класс .compact (25vh) для всех остальных страниц - Улучшена адаптивность для мобильных устройств - Обновлены все шаблоны с hero секциями 🚀 Инфраструктура: - Автоматическая инициализация базы данных при деплое - Улучшены мокапные данные (больше отзывов, бронирований, сообщений) - Добавлены настройки сайта в базу данных - Создан скрипт автоматического деплоя deploy.sh 📦 Система сборки: - Обновлен .gitignore с полным покрытием файлов - Добавлена папка для загрузок с .gitkeep - Улучшен README с инструкциями по запуску - ES модули для инициализации базы данных 🐛 Исправления: - Совместимость с ES модулями в Node.js - Правильная обработка ошибок инициализации БД - Корректные SQL запросы для PostgreSQL
This commit is contained in:
13
src/app.js
13
src/app.js
@@ -23,6 +23,17 @@ const app = express();
|
||||
const PORT = process.env.PORT || 3000;
|
||||
|
||||
async function setupApp() {
|
||||
|
||||
// Initialize database on startup
|
||||
try {
|
||||
console.log('🚀 Initializing database...');
|
||||
const { initDatabase } = await import('../database/init-database.js');
|
||||
await initDatabase();
|
||||
console.log('✅ Database initialized successfully');
|
||||
} catch (error) {
|
||||
console.error('❌ Database initialization failed:', error);
|
||||
console.log('⚠️ Continuing without database initialization...');
|
||||
}
|
||||
|
||||
// Security middleware
|
||||
app.use(helmet({
|
||||
@@ -137,12 +148,14 @@ const toursRouter = (await import('./routes/tours.js')).default;
|
||||
const guidesRouter = (await import('./routes/guides.js')).default;
|
||||
const articlesRouter = (await import('./routes/articles.js')).default;
|
||||
const apiRouter = (await import('./routes/api.js')).default;
|
||||
const ratingsRouter = (await import('./routes/ratings.js')).default;
|
||||
|
||||
app.use('/', indexRouter);
|
||||
app.use('/routes', toursRouter);
|
||||
app.use('/guides', guidesRouter);
|
||||
app.use('/articles', articlesRouter);
|
||||
app.use('/api', apiRouter);
|
||||
app.use('/api', ratingsRouter);
|
||||
|
||||
// Health check endpoint
|
||||
app.get('/health', (req, res) => {
|
||||
|
||||
Reference in New Issue
Block a user