Deploy to Production / Build & Verify (push) Failing after 5m56s
Ping Search Engines / Notify Search Engines (push) Successful in 2s
Deploy to Production / Pre-Deploy Tests (push) Has been skipped
Deploy to Production / Deploy to Railway (push) Has been skipped
Deploy to Production / Deploy to Render (push) Has been skipped
Deploy to Production / Deploy to VPS (PM2) (push) Has been skipped
Deploy to Production / Deploy to Fly.io (push) Has been skipped
Deploy to Production / Post-Deploy Verification (push) Has been skipped
Deploy to Production / Notify on Failure (push) Successful in 2s
E2E Test Suite / Critical User Journeys (push) Has been skipped
E2E Test Suite / API Integration Tests (push) Has been skipped
E2E Test Suite / Smoke Tests (P0) (push) Failing after 11m26s
E2E Test Suite / Form Interaction Tests (push) Failing after 11m42s
E2E Test Suite / Destructive & Chaos Tests (push) Failing after 12m2s
E2E Test Suite / Cross-Browser Regression (chromium) (push) Failing after 16m14s
E2E Test Suite / Cross-Browser Regression (webkit) (push) Failing after 17m45s
E2E Test Suite / Cross-Browser Regression (firefox) (push) Failing after 25m23s
E2E Test Suite / Security Header Tests (push) Failing after 7m55s
E2E Test Suite / Test Report Summary (push) Failing after 20s
E2E Test Suite / Mobile Device Tests (push) Failing after 2h49m9s
Uptime Monitor / Health & Response Time (push) Failing after 2s
Uptime Monitor / SSL Certificate (push) Successful in 2s
Uptime Monitor / Send Alerts (push) Failing after 3s
Uptime Monitor / Record Uptime Success (push) Has been skipped
73 lines
1.7 KiB
JavaScript
73 lines
1.7 KiB
JavaScript
import { defineConfig } from 'astro/config';
|
|
import tailwind from '@astrojs/tailwind';
|
|
import node from '@astrojs/node';
|
|
|
|
export default defineConfig({
|
|
output: 'server',
|
|
adapter: node({
|
|
mode: 'standalone'
|
|
}),
|
|
server: {
|
|
host: '0.0.0.0',
|
|
port: 10000
|
|
},
|
|
integrations: [tailwind()],
|
|
site: 'https://workroot.in',
|
|
|
|
// Image optimization configuration
|
|
image: {
|
|
// Enable sharp image service for WebP conversion
|
|
service: {
|
|
entrypoint: 'astro/assets/services/sharp',
|
|
config: {
|
|
limitInputPixels: false,
|
|
},
|
|
},
|
|
// Default formats for image optimization
|
|
domains: ['images.unsplash.com'],
|
|
remotePatterns: [
|
|
{ protocol: 'https', hostname: 'images.unsplash.com' },
|
|
],
|
|
},
|
|
|
|
// Build optimizations
|
|
build: {
|
|
// Inline small assets to reduce HTTP requests
|
|
inlineStylesheets: 'auto',
|
|
// Split chunks for better caching
|
|
assets: '_assets',
|
|
},
|
|
|
|
// Compression and performance
|
|
compressHTML: true,
|
|
|
|
// Prefetch configuration for faster navigation
|
|
// hover: prefetch when user hovers over a link (lowest latency for clicks)
|
|
// viewport: prefetch when link enters viewport (good for mobile)
|
|
prefetch: {
|
|
prefetchAll: false,
|
|
defaultStrategy: 'hover',
|
|
},
|
|
|
|
// Vite optimizations
|
|
vite: {
|
|
build: {
|
|
// Enable CSS code splitting
|
|
cssCodeSplit: true,
|
|
// Rollup optimizations
|
|
rollupOptions: {
|
|
output: {
|
|
// Manual chunk splitting for better caching
|
|
manualChunks: {
|
|
'vendor': ['astro:content'],
|
|
},
|
|
},
|
|
},
|
|
},
|
|
// Optimize dependencies
|
|
optimizeDeps: {
|
|
exclude: ['@astrojs/image'],
|
|
},
|
|
},
|
|
});
|