const express = require("express");
const compression = require("compression");
const path = require("path");
const app = express();
const PORT = 8080;
app.use(compression({
level: 9, threshold: 512, filter: (req, res) => {
if (req.path.match(/\.(jpg|jpeg|png|gif|mp4)$/)) {
return false;
}
return compression.filter(req, res);
}
}));
app.use((_req, res, next) => {
res.setHeader("Cross-Origin-Opener-Policy", "same-origin");
res.setHeader("Cross-Origin-Embedder-Policy", "require-corp");
res.setHeader('Cache-Control', 'no-cache, no-store, must-revalidate');
next();
});
app.use(express.static(__dirname));
app.use("/pkg", express.static(path.join(__dirname, "pkg")));
app.use("/sqlite-wasm", express.static(path.join(__dirname, "sqlite-wasm")));
app.listen(PORT, () =>
console.log(`🚀 Server running at http://localhost:${PORT} (with compression)`)
);