From 8af6c97d0404a3fccdd2741539eae7c77da3da9e Mon Sep 17 00:00:00 2001 From: SynthLuvr <131367121+SynthLuvr@users.noreply.github.com> Date: Fri, 20 Feb 2026 15:18:13 +0100 Subject: [PATCH 1/4] Configured CI --- .github/workflows/CI.yml | 24 +++++++++++++ .github/workflows/publish.yml | 51 ++++++++++++++++++++++++++++ package.json | 1 + pnpm-lock.yaml | 64 +++++++++++++++++++++++++++++++++++ turbo.json | 11 ++++++ 5 files changed, 151 insertions(+) create mode 100644 .github/workflows/CI.yml create mode 100644 .github/workflows/publish.yml create mode 100644 turbo.json diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml new file mode 100644 index 0000000..dd661a8 --- /dev/null +++ b/.github/workflows/CI.yml @@ -0,0 +1,24 @@ +name: CI + +on: + pull_request: + +jobs: + ci: + runs-on: ubuntu-latest + timeout-minutes: 10 + + steps: + - name: Checkout code + uses: actions/checkout@v6.0.2 + + - name: Set up Node.js + uses: actions/setup-node@v6.2.0 + with: + node-version: 24 + + - uses: pnpm/action-setup@v4.2.0 + + - run: pnpm install + + - run: pnpm turbo ci diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..f3df247 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,51 @@ +name: Publish + +on: + workflow_dispatch: + inputs: + versionType: + description: "Version type (patch or minor)" + required: true + type: choice + options: + - patch + - minor + +permissions: + id-token: write + contents: read + +jobs: + publish: + runs-on: ubuntu-latest + steps: + - name: Checkout code + uses: actions/checkout@v6.0.2 + with: + ssh-key: ${{ secrets.DEPLOY_KEY }} + + - name: Set up Node.js + uses: actions/setup-node@v6.2.0 + with: + node-version: 24 + registry-url: https://registry.npmjs.org + + - uses: pnpm/action-setup@v4.2.0 + + - name: Install dependencies + run: pnpm install + + - name: Bump version and commit + run: | + git config --global user.email "dev@mynth.ai" + git config --global user.name "Mynth Publisher" + npm version ${{ github.event.inputs.versionType }} -m "chore(release): bump to %s version" + + - name: Build + run: pnpm build + + - name: Publish to npm + run: pnpm publish + + - name: Push to git repo + run: git push --follow-tags diff --git a/package.json b/package.json index 9754bf2..cec22d9 100644 --- a/package.json +++ b/package.json @@ -63,6 +63,7 @@ "ky": "^1.14.3", "npm-run-all": "^4.1.5", "tsx": "^4.21.0", + "turbo": "^2.8.10", "typescript": "^5.9.3", "vitest": "^4.0.18" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 96a8dfc..c44d2c9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -87,6 +87,9 @@ importers: tsx: specifier: ^4.21.0 version: 4.21.0 + turbo: + specifier: ^2.8.10 + version: 2.8.10 typescript: specifier: ^5.9.3 version: 5.9.3 @@ -1647,6 +1650,40 @@ packages: engines: {node: '>=18.0.0'} hasBin: true + turbo-darwin-64@2.8.10: + resolution: {integrity: sha512-A03fXh+B7S8mL3PbdhTd+0UsaGrhfyPkODvzBDpKRY7bbeac4MDFpJ7I+Slf2oSkCEeSvHKR7Z4U71uKRUfX7g==} + cpu: [x64] + os: [darwin] + + turbo-darwin-arm64@2.8.10: + resolution: {integrity: sha512-sidzowgWL3s5xCHLeqwC9M3s9M0i16W1nuQF3Mc7fPHpZ+YPohvcbVFBB2uoRRHYZg6yBnwD4gyUHKTeXfwtXA==} + cpu: [arm64] + os: [darwin] + + turbo-linux-64@2.8.10: + resolution: {integrity: sha512-YK9vcpL3TVtqonB021XwgaQhY9hJJbKKUhLv16osxV0HkcQASQWUqR56yMge7puh6nxU67rQlTq1b7ksR1T3KA==} + cpu: [x64] + os: [linux] + + turbo-linux-arm64@2.8.10: + resolution: {integrity: sha512-3+j2tL0sG95iBJTm+6J8/45JsETQABPqtFyYjVjBbi6eVGdtNTiBmHNKrbvXRlQ3ZbUG75bKLaSSDHSEEN+btQ==} + cpu: [arm64] + os: [linux] + + turbo-windows-64@2.8.10: + resolution: {integrity: sha512-hdeF5qmVY/NFgiucf8FW0CWJWtyT2QPm5mIsX0W1DXAVzqKVXGq+Zf+dg4EUngAFKjDzoBeN6ec2Fhajwfztkw==} + cpu: [x64] + os: [win32] + + turbo-windows-arm64@2.8.10: + resolution: {integrity: sha512-QGdr/Q8LWmj+ITMkSvfiz2glf0d7JG0oXVzGL3jxkGqiBI1zXFj20oqVY0qWi+112LO9SVrYdpHS0E/oGFrMbQ==} + cpu: [arm64] + os: [win32] + + turbo@2.8.10: + resolution: {integrity: sha512-OxbzDES66+x7nnKGg2MwBA1ypVsZoDTLHpeaP4giyiHSixbsiTaMyeJqbEyvBdp5Cm28fc+8GG6RdQtic0ijwQ==} + hasBin: true + type-fest@5.4.4: resolution: {integrity: sha512-JnTrzGu+zPV3aXIUhnyWJj4z/wigMsdYajGLIYakqyOW1nPllzXEJee0QQbHj+CTIQtXGlAjuK0UY+2xTyjVAw==} engines: {node: '>=20'} @@ -3298,6 +3335,33 @@ snapshots: optionalDependencies: fsevents: 2.3.3 + turbo-darwin-64@2.8.10: + optional: true + + turbo-darwin-arm64@2.8.10: + optional: true + + turbo-linux-64@2.8.10: + optional: true + + turbo-linux-arm64@2.8.10: + optional: true + + turbo-windows-64@2.8.10: + optional: true + + turbo-windows-arm64@2.8.10: + optional: true + + turbo@2.8.10: + optionalDependencies: + turbo-darwin-64: 2.8.10 + turbo-darwin-arm64: 2.8.10 + turbo-linux-64: 2.8.10 + turbo-linux-arm64: 2.8.10 + turbo-windows-64: 2.8.10 + turbo-windows-arm64: 2.8.10 + type-fest@5.4.4: dependencies: tagged-tag: 1.0.0 diff --git a/turbo.json b/turbo.json new file mode 100644 index 0000000..b8fd051 --- /dev/null +++ b/turbo.json @@ -0,0 +1,11 @@ +{ + "$schema": "https://turbo.build/schema.json", + "tasks": { + "build": {}, + "lint": {}, + "test": {}, + "ci": { + "dependsOn": ["build", "lint", "test"] + } + } +} From 6f473c1df3c1a9e3ea959867c34c63b93cc06b1a Mon Sep 17 00:00:00 2001 From: SynthLuvr <131367121+SynthLuvr@users.noreply.github.com> Date: Fri, 20 Feb 2026 15:20:51 +0100 Subject: [PATCH 2/4] need to build before testing --- turbo.json | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/turbo.json b/turbo.json index b8fd051..321a127 100644 --- a/turbo.json +++ b/turbo.json @@ -3,9 +3,7 @@ "tasks": { "build": {}, "lint": {}, - "test": {}, - "ci": { - "dependsOn": ["build", "lint", "test"] - } + "test": { "dependsOn": ["build"] }, + "ci": { "dependsOn": ["build", "lint", "test"] } } } From 95a8ddc0131d27ac767595b3ac574291af6a6882 Mon Sep 17 00:00:00 2001 From: SynthLuvr <131367121+SynthLuvr@users.noreply.github.com> Date: Fri, 20 Feb 2026 15:26:12 +0100 Subject: [PATCH 3/4] Link before testing --- package.json | 1 + turbo.json | 3 ++- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index cec22d9..cd16bb0 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "prebuild": "pnpm del -rf dist", "build": "pnpm tsc", "postbuild": "pnpm del -rf dist/tests", + "link": "pnpm link --global", "lint": "pnpm npm-run-all lint:prettier lint:check lint:lint", "lint:check": "pnpm biome check .", "lint:lint": "pnpm biome lint .", diff --git a/turbo.json b/turbo.json index 321a127..688d2d3 100644 --- a/turbo.json +++ b/turbo.json @@ -3,7 +3,8 @@ "tasks": { "build": {}, "lint": {}, - "test": { "dependsOn": ["build"] }, + "link": {}, + "test": { "dependsOn": ["build", "link"] }, "ci": { "dependsOn": ["build", "lint", "test"] } } } From fa5141afc5b7a18645271c1118b7989e78ef2499 Mon Sep 17 00:00:00 2001 From: SynthLuvr <131367121+SynthLuvr@users.noreply.github.com> Date: Fri, 20 Feb 2026 15:28:14 +0100 Subject: [PATCH 4/4] ignore turbo files --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 34f8b24..ddeb23a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ +.tsbuildinfo +.turbo .vscode dist node_modules -.tsbuildinfo