From 0eff5f3c3f598fee11e5e0c5806ec64f3dc0e77c Mon Sep 17 00:00:00 2001 From: maaz519 Date: Wed, 27 May 2026 13:41:26 +0530 Subject: [PATCH] chore: initialise monorepo scaffold --- .gitignore | 7 +++ .prettierrc | 6 +++ package.json | 20 ++++++++ pnpm-lock.yaml | 113 ++++++++++++++++++++++++++++++++++++++++++++ pnpm-workspace.yaml | 3 ++ tsconfig.base.json | 14 ++++++ turbo.json | 18 +++++++ 7 files changed, 181 insertions(+) create mode 100644 .gitignore create mode 100644 .prettierrc create mode 100644 package.json create mode 100644 pnpm-lock.yaml create mode 100644 pnpm-workspace.yaml create mode 100644 tsconfig.base.json create mode 100644 turbo.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3c9d3e6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +node_modules +dist +.next +.turbo +coverage +.env +*.env.local diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..47174e4 --- /dev/null +++ b/.prettierrc @@ -0,0 +1,6 @@ +{ + "semi": true, + "singleQuote": true, + "trailingComma": "all", + "printWidth": 100 +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..7e2c355 --- /dev/null +++ b/package.json @@ -0,0 +1,20 @@ +{ + "name": "tower", + "private": true, + "scripts": { + "build": "turbo build", + "dev": "turbo dev", + "test": "turbo test", + "lint": "turbo lint" + }, + "devDependencies": { + "turbo": "^2.0.0", + "typescript": "^5.7.0", + "@types/node": "^22.0.0", + "prettier": "^3.0.0" + }, + "engines": { + "node": ">=22.0.0", + "pnpm": ">=10.0.0" + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml new file mode 100644 index 0000000..f376df5 --- /dev/null +++ b/pnpm-lock.yaml @@ -0,0 +1,113 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + devDependencies: + '@types/node': + specifier: ^22.0.0 + version: 22.19.19 + prettier: + specifier: ^3.0.0 + version: 3.8.3 + turbo: + specifier: ^2.0.0 + version: 2.9.15 + typescript: + specifier: ^5.7.0 + version: 5.9.3 + +packages: + + '@turbo/darwin-64@2.9.15': + resolution: {integrity: sha512-nnDo9R1Df+s2x6jxlERtbg7xRpuicf8p4J2krcnjeaMBt3q9V41pGXa4t9YM2Y4ozozsVJ+CH405CJUrWIQK4Q==} + cpu: [x64] + os: [darwin] + + '@turbo/darwin-arm64@2.9.15': + resolution: {integrity: sha512-fDSx56oqoFuS+yUQw7hqjQTkjrSLdMcplhuLC8HcSkWC6YrpwEmUUYsPYHPxy4ALvLxnmPQuk6XoSD8tdkjP+g==} + cpu: [arm64] + os: [darwin] + + '@turbo/linux-64@2.9.15': + resolution: {integrity: sha512-/bmxn+x/xE+oh0VzEXt/zf2zsORAYZPrL3db5/VrXzYt0Z4wxcvffwJBGlSfla2smfS1BLGBiyWldJlWDXJVXA==} + cpu: [x64] + os: [linux] + + '@turbo/linux-arm64@2.9.15': + resolution: {integrity: sha512-cbOaDe1ijz5As+mimOOHgmRMolZZZO7miNBHHp5xdiYMm2Q/Dwu1JVLx/Kw4s7xjocG/oEoHrpHrxpEAIEfNiw==} + cpu: [arm64] + os: [linux] + + '@turbo/windows-64@2.9.15': + resolution: {integrity: sha512-/Fzm7afui7uK7dFBwrTXKuDhBBTiHk5I+hMVAPMR7cqQyDo2norCNUsN9PdNuYcmzYbhSOxzz498wQYvSAz29w==} + cpu: [x64] + os: [win32] + + '@turbo/windows-arm64@2.9.15': + resolution: {integrity: sha512-fOHEsLcqVdFXLw2ApWv4gxwfHzkUnpo9rHGml+9+dyHj148m/Bc+556kEvb5+4u6prI1LMd8zEZE2HcO6Jn2VQ==} + cpu: [arm64] + os: [win32] + + '@types/node@22.19.19': + resolution: {integrity: sha512-dyh/xO2Fh5bYrfWaaqGrRQQGkNdmYw6AmaAUvYeUMNTWQtvb796ikLdmTchRmOlOiIJ1TDXfWgVx1QkUlQ6Hew==} + + prettier@3.8.3: + resolution: {integrity: sha512-7igPTM53cGHMW8xWuVTydi2KO233VFiTNyF5hLJqpilHfmn8C8gPf+PS7dUT64YcXFbiMGZxS9pCSxL/Dxm/Jw==} + engines: {node: '>=14'} + hasBin: true + + turbo@2.9.15: + resolution: {integrity: sha512-VpKvD9Z0Hu/xrGUAYX1wnhfpqv835wIwGqeKfulvBPTOcDap0E3nFwyzCAVV85fB1sBcBDEfTP+7FSW7GzwWSQ==} + hasBin: true + + typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} + engines: {node: '>=14.17'} + hasBin: true + + undici-types@6.21.0: + resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + +snapshots: + + '@turbo/darwin-64@2.9.15': + optional: true + + '@turbo/darwin-arm64@2.9.15': + optional: true + + '@turbo/linux-64@2.9.15': + optional: true + + '@turbo/linux-arm64@2.9.15': + optional: true + + '@turbo/windows-64@2.9.15': + optional: true + + '@turbo/windows-arm64@2.9.15': + optional: true + + '@types/node@22.19.19': + dependencies: + undici-types: 6.21.0 + + prettier@3.8.3: {} + + turbo@2.9.15: + optionalDependencies: + '@turbo/darwin-64': 2.9.15 + '@turbo/darwin-arm64': 2.9.15 + '@turbo/linux-64': 2.9.15 + '@turbo/linux-arm64': 2.9.15 + '@turbo/windows-64': 2.9.15 + '@turbo/windows-arm64': 2.9.15 + + typescript@5.9.3: {} + + undici-types@6.21.0: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml new file mode 100644 index 0000000..e9b0dad --- /dev/null +++ b/pnpm-workspace.yaml @@ -0,0 +1,3 @@ +packages: + - 'apps/*' + - 'packages/*' diff --git a/tsconfig.base.json b/tsconfig.base.json new file mode 100644 index 0000000..43090fa --- /dev/null +++ b/tsconfig.base.json @@ -0,0 +1,14 @@ +{ + "compilerOptions": { + "target": "ES2021", + "module": "commonjs", + "lib": ["ES2021"], + "strict": true, + "skipLibCheck": true, + "declaration": true, + "declarationMap": true, + "sourceMap": true, + "resolveJsonModule": true, + "esModuleInterop": true + } +} diff --git a/turbo.json b/turbo.json new file mode 100644 index 0000000..85be90b --- /dev/null +++ b/turbo.json @@ -0,0 +1,18 @@ +{ + "$schema": "https://turbo.build/schema.json", + "tasks": { + "build": { + "dependsOn": ["^build"], + "outputs": ["dist/**", ".next/**"] + }, + "dev": { + "cache": false, + "persistent": true + }, + "test": { + "dependsOn": ["^build"], + "outputs": ["coverage/**"] + }, + "lint": {} + } +}