Skip to content

Revive the Bubble plugin on current Uppy and Transloadit #1

Closed

Description

@kvz

Why

Kevin, 2026-10-29: revive our Bubble plugin, and modernize it the way transloadit/zapier was modernized in October 2026. Research for the partner pilot (dispatcher DSP-436) found:

  • Bubble is alive. Agent 2 and a Bubble MCP launched in October 2026, and its marketplace lists about 7,600 plugins.
  • Our plugin, "uppy-transloadit" (214 lifetime installs, rated 3.0), last changed in 2019. It loads Robodog v1.1.1 (deprecated) from transloadit.edgly.net, and its marketplace page no longer opens.
  • A Bubble agency with maintained upload plugins already offers Transloadit as an option. Bubble builders reach for us anyway.

What

Follow the zapier repo's path, adapted to a Bubble plugin:

  • Tooling. TypeScript sources with a build step that emits the code Bubble's plugin editor expects. Add Biome, vitest with coverage, Yarn 4 and Node per the repo standards, and changesets for versioning, like node-sdk and zapier.
  • Code. Rebuild the element on current Uppy with @uppy/transloadit, replacing Robodog. Support a Template ID or Assembly Instructions with signatures, an upload button or Dashboard, and results exposed as Bubble states and events.
  • Tests. Write unit tests for the element logic. Add an e2e test that mounts the built element in a local harness the way Bubble does, uploads a real file and waits for real results from the Transloadit API.
  • CI. Run GitHub Actions on pull requests, with Dependabot. The e2e job uses opentest credentials as GitHub secrets, like zapier. For local runs, read them from ~/code/node-sdk/.env and never print them.
  • Docs. Write a README, CONTRIBUTING.md with the release process and maintenance decisions, and a refreshed plugin description.
  • Bubble. This repo is synced from Bubble's plugin editor ("Automatic commit from Bubble"), so code here doesn't publish by itself. Write a release script or step-by-step that puts the built element into the plugin editor. Installing in a Bubble test app, checking it there and publishing need Kevin's Bubble login.

Done when

  • The modernized repo builds, tests (unit and e2e against real Transloadit) and lints in CI.
  • The plugin works in a real Bubble test app.
  • It's published to the marketplace with a working page, and the docs point to it.

🤖 Claimed by kvz on framework1/bubble-plugin since 2026-10-30 · resume: codex resume 01a18956-04ed-7730-8e93-34911ec3771e

Activity

  1. self-assigned this
    on Oct 29, 2026
  2. kvz commented on Oct 29, 2026

    @kvz
    MemberAuthor

    Implementation and validation are ready for human review in #2 at fda7414164fd467266d3c2733defa1e00d433106.

    • Runtime/tooling/docs: +1,152 / −90; tests: +1,097 / −0; lockfile: +3,240 / −0 (45 files).
    • yarn check: 58 unit tests, 93.65% line coverage, lint/types/build pass. Twelve built-export Chromium checks pass with the real API enabled, including signed upload/resize/download and recovery. Independent final UX review passed the unchanged product export; desktop and 390px captures have no console errors, failed requests or overflow.
    • Council stopped at 10 rounds. All accepted findings are fixed, including late old errors/results and duplicate legacy notifications. Two consecutive clean rounds were not achieved; the final fixes have behavioral red-to-green coverage but were not followed by an eleventh round.
    • One blocking gh-run-watch caught a restriction-test request abort; the check now waits for its preview and reports failures more precisely. Both Node jobs pass on the final commit (run). The only red is real-API CI: its log confirms missing credentials before any upload, tracked in #3.
    • Kevin: add BUBBLE_E2E_TRANSLOADIT_KEY and BUBBLE_E2E_TRANSLOADIT_SECRET as both Actions and Dependabot secrets, using the existing opentest credentials, then rerun the failed e2e job. No Template secret is required.
    • Installing the development plugin in a Bubble test app, publishing and checking the marketplace URL still require Kevin’s login. Follow the exact editor handoff. Keep Revive the Bubble plugin on current Uppy and Transloadit #1 open until these acceptance steps pass; the PR uses Refs Revive the Bubble plugin on current Uppy and Transloadit #1.

    The local Bubble-only ZIP and SHA-256 are in build/; all 15 export entries match the final checkout. Evidence and the UX PASS are in test/evidence/ and /tmp/bubble-usertest-20261029/.

    Revive Bubble uploads with current Uppy and tested release candidates — open

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions