UNPKG

hypershield

Version:

Middleware suite for high-performance and resilient APIs

50 lines 1.56 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const child_process_1 = require("child_process"); const fs_1 = __importDefault(require("fs")); const path_1 = __importDefault(require("path")); function ensureDirectories() { const dirs = [ 'dist', 'logs', 'coverage', 'temp' ]; dirs.forEach(dir => { const dirPath = path_1.default.join(process.cwd(), dir); if (!fs_1.default.existsSync(dirPath)) { fs_1.default.mkdirSync(dirPath, { recursive: true }); console.log(`Created directory: ${dir}`); } }); } function setupGitHooks() { try { (0, child_process_1.execSync)('npx husky install', { stdio: 'inherit' }); console.log('Git hooks installed successfully'); } catch (error) { console.error('Failed to install git hooks:', error); } } function setupEnvFiles() { const envFiles = ['.env.example', '.env.test']; envFiles.forEach(file => { if (!fs_1.default.existsSync(file)) { fs_1.default.copyFileSync(`${file}.template`, file); console.log(`Created ${file} from template`); } }); } function main() { console.log('Starting project setup...'); ensureDirectories(); setupGitHooks(); setupEnvFiles(); console.log('Setup completed successfully'); } main(); //# sourceMappingURL=setup.js.map