diff --git a/.github/.kodiak.toml b/.github/.kodiak.toml index ded81e4..b64a5f6 100644 --- a/.github/.kodiak.toml +++ b/.github/.kodiak.toml @@ -15,4 +15,4 @@ strip_html_comments = true # default: false always = true # default: false [approve] -auto_approve_usernames = ["1gtm", "tamalsaha"] +auto_approve_usernames = ["tamalsaha", "1gtm", "1gtm-app[bot]"] \ No newline at end of file diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..c2f87f8 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,7 @@ +version: 2 +updates: + - package-ecosystem: "npm" + directory: "/" + schedule: + interval: "daily" + open-pull-requests-limit: 0 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2291b25..47cbde1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,18 +8,22 @@ on: branches: - master + workflow_dispatch: +concurrency: + group: ${{ github.workflow }}-${{ github.head_ref || github.ref }} + cancel-in-progress: true jobs: build: name: Build - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1 - name: Use Node.js 10.x - uses: actions/setup-node@v1 + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: - node-version: 10.x + node-version: '22' - name: Build env: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index a8439d7..e0fdc3b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -5,17 +5,25 @@ on: tags: - "*.*" + workflow_dispatch: +concurrency: + group: ${{ github.workflow }}-${{ github.head_ref || github.ref }} + cancel-in-progress: true jobs: build: name: Build - runs-on: ubuntu-latest + runs-on: ubuntu-24.04 + permissions: + contents: write steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1 + with: + fetch-depth: 0 - name: Use Node.js - uses: actions/setup-node@v1 + uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0 with: - node-version: 10.x + node-version: '22' - name: Build run: | diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..2124c4d --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,29 @@ +# AGENTS.md + +This file provides guidance to coding agents (e.g. Claude Code, claude.ai/code) when working with code in this repository. + +## Repository purpose + +`@bytebuilders/deploy-button` — an embeddable JavaScript widget that renders a "Deploy to ByteBuilders" button on third-party sites (vendor catalogs, docs, demos). Clicking it opens a modal that hands the user off to the ByteBuilders console with the chart/source pre-filled. Built with webpack and shipped as a minified bundle under `dist/`. + +## Architecture + +- `src/` — widget source (the `DeployButton` class, modal logic, styles). +- `modal.html` — modal template. +- `public/` — static assets. +- `dist/` — built bundle (committed for direct CDN consumption). +- `webpack.config.js` — bundler config. +- `package.json` — npm scripts and dependencies. + +## Common commands + +- `npm install` — install dependencies. +- `npm run build` — webpack production build → `dist/`. +- (No tests configured.) + +## Conventions + +- This is an **embeddable widget**, not a SPA. Keep the bundle small and self-contained. +- The bundle is checked into `dist/` so third parties can consume it directly from GitHub; rebuild + commit `dist/` when changing `src/`. +- Don't introduce global state that conflicts with the host page. +- License: see `LICENSE` if present. diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..43c994c --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1 @@ +@AGENTS.md