diff --git a/.github/workflows/noir-js.yml b/.github/workflows/noir-js.yml new file mode 100644 index 00000000000..accdc720942 --- /dev/null +++ b/.github/workflows/noir-js.yml @@ -0,0 +1,24 @@ +name: Release and Publish Noir Js + +on: + workflow_dispatch: + +jobs: + release-noir-js: + name: Release and Publish Noir Js + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install dependencies + run: yarn install --immutable + + - name: Build noir_js + run: yarn workspace @noir-lang/noir_js build + + - name: Publish to NPM + working-directory: ./tooling/noir_js + run: npm publish + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_PUBLISH_TOKEN }} \ No newline at end of file diff --git a/package.json b/package.json index 43833c7d17e..bb91b79f052 100644 --- a/package.json +++ b/package.json @@ -7,6 +7,7 @@ "compiler/source-resolver", "tooling/noirc_abi_wasm", "compiler/integration-tests", + "tooling/noir_js", "release-tests" ], "scripts": { diff --git a/tooling/noir_js/index.ts b/tooling/noir_js/index.ts new file mode 100644 index 00000000000..2b3bf593d0c --- /dev/null +++ b/tooling/noir_js/index.ts @@ -0,0 +1,3 @@ +import * as acvm from "@noir-lang/acvm_js"; +import * as noirc from "@noir-lang/noirc_abi"; +export { acvm, noirc } \ No newline at end of file diff --git a/tooling/noir_js/package.json b/tooling/noir_js/package.json new file mode 100644 index 00000000000..5303b0aacbd --- /dev/null +++ b/tooling/noir_js/package.json @@ -0,0 +1,13 @@ +{ + "name": "@noir-lang/noir_js", + "collaborators": [ + "The Noir Team " + ], + "version": "0.0.1", + "packageManager": "yarn@3.5.1", + "license": "(MIT OR Apache-2.0)", + "dependencies": { + "@noir-lang/acvm_js": "0.26.1", + "@noir-lang/noirc_abi": "workspace:*" + } +} diff --git a/yarn.lock b/yarn.lock index 14252256e89..abc84a8a5a7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -385,6 +385,13 @@ __metadata: languageName: node linkType: hard +"@noir-lang/acvm_js@npm:0.26.1": + version: 0.26.1 + resolution: "@noir-lang/acvm_js@npm:0.26.1" + checksum: ae8cb6e31610cd8aa392855342d0c953a1bc4cd9e07236340341afa5815696a69a6635c38241f1d6a5dd30c5a8ae49234f2ba8b71d46c5d1a46756ff6f4dde3a + languageName: node + linkType: hard + "@noir-lang/acvm_js@npm:^0.26.0": version: 0.26.0 resolution: "@noir-lang/acvm_js@npm:0.26.0" @@ -402,6 +409,15 @@ __metadata: languageName: unknown linkType: soft +"@noir-lang/noir_js@workspace:tooling/noir_js": + version: 0.0.0-use.local + resolution: "@noir-lang/noir_js@workspace:tooling/noir_js" + dependencies: + "@noir-lang/acvm_js": 0.26.1 + "@noir-lang/noirc_abi": "workspace:*" + languageName: unknown + linkType: soft + "@noir-lang/noir_wasm@workspace:*, @noir-lang/noir_wasm@workspace:compiler/wasm": version: 0.0.0-use.local resolution: "@noir-lang/noir_wasm@workspace:compiler/wasm"