@nerdo/code-reviewer
Version:
A web-based visual git diff tool for reviewing code changes between commits, branches, and tags
36 lines (35 loc) • 1.36 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const express_1 = __importDefault(require("express"));
const cors_1 = __importDefault(require("cors"));
const path_1 = __importDefault(require("path"));
const repository_1 = require("./routes/repository");
const commit_1 = require("./routes/commit");
const file_1 = require("./routes/file");
const app = (0, express_1.default)();
const PORT = process.env.PORT || 3001;
const DIST_PATH = process.env.DIST_PATH;
app.use((0, cors_1.default)());
app.use(express_1.default.json());
app.use('/api/repository', repository_1.repositoryRouter);
app.use('/api/commits', commit_1.commitRouter);
app.use('/api/files', file_1.fileRouter);
// Serve static files when running as CLI tool
if (DIST_PATH) {
app.use(express_1.default.static(DIST_PATH));
// Handle client-side routing
app.get('*', (req, res) => {
res.sendFile(path_1.default.join(DIST_PATH, 'index.html'));
});
}
// Error handling middleware
app.use((err, _req, res) => {
console.error('Server error:', err);
res.status(500).json({ error: err.message || 'Internal server error' });
});
app.listen(PORT, () => {
console.log(`Server running on port ${PORT}`);
});