Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: vechain/vechain-kit
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 2.10.0
Choose a base ref
...
head repository: vechain/vechain-kit
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 2.10.1
Choose a head ref
  • 5 commits
  • 103 files changed
  • 2 contributors

Commits on May 20, 2026

  1. ci(cross-app): don't trigger on packages/vechain-kit/** changes (#626)

    cross-app-connect has no dependency on @vechain/vechain-kit, so kit-only
    changes can't break its build or affect what's deployed. Drop the
    packages/vechain-kit/** path filter from both the PR check and the Pages
    deploy so they only run when cross-app, yarn.lock, or the workflow file
    itself changes.
    
    Co-authored-by: Claude Opus 4.7 (1M context) <[email protected]>
    Agilulfo1820 and claude authored May 20, 2026
    Configuration menu
    Copy the full SHA
    29f6773 View commit details
    Browse the repository at this point in the history

Commits on May 21, 2026

  1. feat(playground): VeKit Playground revamp · AI-first DX · CloudFront …

    …deploy (#628)
    
    * refactor(playground): complete UX revamp with sidebar nav and code snippets
    
    Replace the single-page playground with a developer-first dashboard:
    sidebar with 10 categorized routes, per-section live demos paired with
    copy-able code snippets, hook badges that link to docs, and a status
    badge system. Drops duplicate cards, deletes ~9 legacy components,
    adds i18n coverage for 139 new strings across 7 languages, and fixes
    the body centering / transparency issues exposed by the new layout.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    * feat(playground): AI-first prompts + VeChain AI Skills route
    
    Add a dedicated /ai-skills route (sourced from homepage) that lists
    the 11 VeChain AI skills with copy-able install commands for the
    Skills CLI and Claude Code plugin.
    
    Extend DemoSection with an "AI prompt" tab. AIPromptBlock auto-
    prepends a "read these skills first" preamble with clickable GitHub
    URLs based on the section's required skills, so copy-paste into
    Claude / Cursor / any agent gives them domain context up-front.
    
    Restructure /getting-started install section into two AI prompts:
    "Start a new VeChain dApp" (primary, via create-vechain-dapp) and
    "Add to existing project" (secondary, with the install snippet
    preserved for manual setup). Recommend Chakra UI v3 + next-themes
    in scaffolding prompts to point devs at the modern stack.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    * chore(playground): rebrand to VeKit Playground + AI Skills resource link
    
    Adopt the homepage logo treatment in the sidebar (native height={8},
    no rounded box), rename the brand to "VeKit Playground" in the
    sidebar heading and footer, and refresh title/description/OG/Twitter
    metadata around the AI-first positioning.
    
    Add VeChain AI Skills as the first card in the Resources page, with
    a direct link to github.com/vechain/vechain-ai-skills.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    * ci(playground): deploy to CloudFront on main + document infra
    
    Add deploy-playground-cloudfront.yaml: triggers on push to main when
    examples/playground/** or packages/vechain-kit/** change, builds the
    playground (yarn install:all && yarn build), syncs the static export to
    the new S3 bucket and invalidates CloudFront. Mirrors the pattern of
    deploy-cloudfront.yaml (homepage).
    
    Document the infrastructure layout (vechain-kit-infra + vechain.org-domains)
    in the root README so the deploy chain is discoverable.
    
    Pairs with vechain/vechain-kit-infra#24, which provisions the bucket and
    CloudFront distribution for playground.vechainkit.vechain.org.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    * ci(playground): add per-PR preview environment
    
    Mirrors deploy-preview.yaml (homepage) but for the playground. Triggers
    on pull_request_target when examples/playground/**, packages/vechain-kit/**
    or yarn.lock change, gates external PRs behind the safe-to-deploy label,
    builds the playground with NEXT_PUBLIC_BASE_PATH=/<branch>/playground,
    syncs to the existing preview bucket under <branch>/playground/, invalidates
    the preview CloudFront, and posts the URL as a sticky comment on the PR.
    
    Reuses AWS_PREVIEW_BUCKET_NAME and AWS_PREVIEW_CLOUDFRONT_DISTRIBUTION_ID
    — no new infra needed.
    
    URL pattern: https://preview.vechainkit.vechain.org/<branch>/playground
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    ---------
    
    Co-authored-by: Claude Opus 4.7 (1M context) <[email protected]>
    Agilulfo1820 and claude authored May 21, 2026
    Configuration menu
    Copy the full SHA
    e89373d View commit details
    Browse the repository at this point in the history
  2. feat(homepage): surface VeKit Playground in hero and header (#629)

    * feat(homepage): surface VeKit Playground in hero and header
    
    Adds a "Try the playground" secondary CTA next to "Get Started" in the
    HeroSection and a "Playground" link in the desktop header, both pointing
    to https://playground.vechainkit.vechain.org. Adds the playground to the
    Demo & Examples list in the root README.
    
    2 new i18n keys per locale (Playground, "Try the playground"); English
    fallback in non-en files until the next translate run.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    * ci(homepage): rename workflow to "Deploy Homepage to Cloudfront"
    
    Matches the naming convention of the playground deploy workflow
    ("Deploy Playground to Cloudfront") so the two surfaces are
    distinguishable at a glance in the Actions UI.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    * docs(readme): rename "Live Demo" link to "Homepage"
    
    Distinguishes the homepage from the playground in the Demo & Examples
    list, mirroring the workflow naming.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    * docs: AI-first npm README, fix broken banner image
    
    Rewrite packages/vechain-kit/README.md to lead with two AI prompts
    ("Start a new VeChain dApp" via create-vechain-dapp, "Add to existing
    project") that tell the agent to read the relevant VeChain AI Skill
    first. The manual install path is preserved below as a fallback.
    
    Root README banner was 404 (i.ibb.co); replace with the same S3-hosted
    shocase image already used by the npm README and the GitBook docs.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    * i18n(playground): seed it/es/fr/de/ja/zh translations + align OG metadata
    
    Translate the ~120 UI-facing strings (sidebar, topbar, hero, demo
    labels, status badges, connect-gate, page titles + descriptions,
    skill cards) into Italian, Spanish, French, German, Japanese and
    Chinese. Long multi-line AI prompts intentionally stay in English —
    they're meant to be pasted into AI agents, which prefer English and
    the prompts already embed non-translatable technical identifiers
    (hook names, package names).
    
    Add `scripts/seed-translations.js` as a checked-in maintenance script
    so the seed is reproducible if/when `yarn translate` (translo-cli) is
    not available.
    
    Align `layout.tsx` OG/Twitter metadata with the homepage shape:
    - title "VeKit Playground" (concise, mirrors homepage's "VeKit")
    - og:url points to the playground subdomain
    - og:image uses the same S3-hosted banner as the homepage
      (https://prod-vechainkit-docs-images-bucket.s3.eu-west-1.amazonaws.com/banner-kit.png)
    - description tightened
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    * feat(playground): custom OG banner with "Playground" overlay
    
    Render a playground-specific OG image by overlaying "Playground" on the
    right of the existing VeKit banner (white text, Inter, baseline matched
    to the "VeKit" wordmark on the left). Source remains the homepage's
    banner-kit.png; the overlaid version is checked in at
    examples/playground/public/images/banner-playground.png and served by
    CloudFront from playground.vechainkit.vechain.org.
    
    og:image / twitter:image meta tags now use the absolute playground URL,
    so X / Slack / Discord previews show the right asset without depending
    on the S3 docs bucket.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
    
    ---------
    
    Co-authored-by: Claude Opus 4.7 (1M context) <[email protected]>
    Agilulfo1820 and claude authored May 21, 2026
    Configuration menu
    Copy the full SHA
    66b6ab2 View commit details
    Browse the repository at this point in the history

Commits on May 25, 2026

  1. fix(connect-modal): close stuck dapp-kit WC QR modal after handshake (#…

    …630)
    
    When connecting via WalletConnect through vechain-kit's custom modal,
    `setSource('wallet-connect') + connect()` causes dapp-kit's signer to
    call `CustomWalletConnectModal.openModal({uri})`, which fires
    `vdk-open-wc-qrcode` and pops dapp-kit-ui's own `<vdk-connect-modal>`
    with the QR on top of ours. That modal only auto-closes when the user
    clicks through dapp-kit-ui's own source picker (its `onSourceClick`
    calls `n.modal.close()` after `wallet.connect()` resolves). Since we
    drive the connect from our hook, that path never runs and the QR
    modal stays up post-handshake. Worse, the X button's `handleClose`
    calls `wallet.disconnect()` whenever `walletConnectQRcode` is set —
    so the user's only out also disconnects them.
    
    Fix: after `dappKitConnect()` resolves for `wallet-connect`, call
    `useDAppKitWalletModal().close()`. That dispatches
    `vdk-close-wallet-modal` (only sets `open=false`; no disconnect side
    effect, since disconnect lives inside `handleClose`, not the
    close-event listener).
    
    Co-authored-by: Claude Opus 4.7 (1M context) <[email protected]>
    Agilulfo1820 and claude authored May 25, 2026
    Configuration menu
    Copy the full SHA
    8a3ffaf View commit details
    Browse the repository at this point in the history
  2. chore(homepage): remove Playground from navbar and drop PR preview (#631

    )
    
    Removes the Playground link from the homepage header navbar and
    deletes the playground PR preview deployment workflow. Bumps
    @vechain/vechain-kit to 2.10.1.
    
    Co-authored-by: Claude Opus 4.7 (1M context) <[email protected]>
    Agilulfo1820 and claude authored May 25, 2026
    Configuration menu
    Copy the full SHA
    71296de View commit details
    Browse the repository at this point in the history
Loading