From 48b6750465cf669d78931956f61e820dbb2deebb Mon Sep 17 00:00:00 2001 From: shrimbly Date: Fri, 9 Jan 2026 13:59:52 +1300 Subject: [PATCH] docs: create multi-provider support roadmap (6 phases) Enable Replicate and fal.ai alongside existing Gemini integration Phases: 1. Provider Infrastructure: API key storage and settings UI 2. Model Discovery: Dynamic model fetching from provider APIs 3. Generate Node Refactor: Multi-model support in generic Generate node 4. Model Search Dialog: Floating icons and searchable model browser 5. Image URL Server: Local endpoint for URL-based providers 6. Video & Polish: Video playback and parameter customization Co-Authored-By: Claude Opus 4.5 --- .planning/ROADMAP.md | 103 +++++++++++++++++++++++++++++++++++++++++++ .planning/STATE.md | 57 ++++++++++++++++++++++++ 2 files changed, 160 insertions(+) create mode 100644 .planning/ROADMAP.md create mode 100644 .planning/STATE.md diff --git a/.planning/ROADMAP.md b/.planning/ROADMAP.md new file mode 100644 index 00000000..8ba02519 --- /dev/null +++ b/.planning/ROADMAP.md @@ -0,0 +1,103 @@ +# Roadmap: Node Banana Multi-Provider Support + +## Overview + +Transform Node Banana from a Gemini-only image generator into a multi-provider platform supporting Replicate and fal.ai. The journey builds provider infrastructure first, then adds dynamic model discovery, refactors the generate node for flexibility, creates a searchable model browser, adds local image serving for URL-based providers, and finishes with video support and polish. + +## Domain Expertise + +None + +## Phases + +**Phase Numbering:** +- Integer phases (1, 2, 3): Planned milestone work +- Decimal phases (2.1, 2.2): Urgent insertions (marked with INSERTED) + +- [ ] **Phase 1: Provider Infrastructure** - API key storage and provider settings UI +- [ ] **Phase 2: Model Discovery** - Dynamic model fetching from Replicate/fal.ai APIs +- [ ] **Phase 3: Generate Node Refactor** - Rename NanoBanana to generic Generate with multi-model support +- [ ] **Phase 4: Model Search Dialog** - Floating action bar icons and searchable model browser +- [ ] **Phase 5: Image URL Server** - Local endpoint serving images as URLs for providers +- [ ] **Phase 6: Video & Polish** - Video playback, parameter customization, edge cases + +## Phase Details + +### Phase 1: Provider Infrastructure +**Goal**: Users can configure Replicate and fal.ai API keys in settings, with keys securely stored +**Depends on**: Nothing (first phase) +**Research**: Unlikely (internal UI patterns, Zustand state management) +**Plans**: TBD + +Plans: +- [ ] 01-01: Provider settings UI in ProjectSetupModal +- [ ] 01-02: Provider abstraction layer and types + +### Phase 2: Model Discovery +**Goal**: App can fetch and cache available models from enabled providers at runtime +**Depends on**: Phase 1 +**Research**: Likely (external APIs) +**Research topics**: Replicate model listing API endpoints, fal.ai model discovery endpoints, response schemas and pagination +**Plans**: TBD + +Plans: +- [ ] 02-01: Replicate model fetching API route +- [ ] 02-02: fal.ai model fetching API route +- [ ] 02-03: Model caching and unified model interface + +### Phase 3: Generate Node Refactor +**Goal**: NanoBanana node becomes generic Generate node supporting any provider's model +**Depends on**: Phase 2 +**Research**: Unlikely (internal refactoring using existing patterns) +**Plans**: TBD + +Plans: +- [ ] 03-01: Rename NanoBanana to Generate, add model selector +- [ ] 03-02: Provider-specific execution in generate API route +- [ ] 03-03: Backward compatibility for existing workflows + +### Phase 4: Model Search Dialog +**Goal**: Users can browse models via floating action bar icons and searchable dialog +**Depends on**: Phase 3 +**Research**: Unlikely (internal UI using React patterns) +**Plans**: TBD + +Plans: +- [ ] 04-01: Floating action bar with provider icons +- [ ] 04-02: Model search dialog with filtering and selection + +### Phase 5: Image URL Server +**Goal**: Local API endpoint serves workflow images as URLs for providers requiring URL inputs +**Depends on**: Phase 3 +**Research**: Unlikely (Next.js API routes, existing patterns) +**Plans**: TBD + +Plans: +- [ ] 05-01: Image serving endpoint and URL generation +- [ ] 05-02: Integration with generate node for URL-based providers + +### Phase 6: Video & Polish +**Goal**: Video outputs play inline, custom parameters work, edge cases handled +**Depends on**: Phase 5 +**Research**: Likely (video handling) +**Research topics**: HTML5 video element for base64/blob URLs, provider response formats for video content +**Plans**: TBD + +Plans: +- [ ] 06-01: Video playback in output node +- [ ] 06-02: Custom model parameters from provider schemas +- [ ] 06-03: Edge case handling and final polish + +## Progress + +**Execution Order:** +Phases execute in numeric order: 1 → 2 → 3 → 4 → 5 → 6 + +| Phase | Plans Complete | Status | Completed | +|-------|----------------|--------|-----------| +| 1. Provider Infrastructure | 0/2 | Not started | - | +| 2. Model Discovery | 0/3 | Not started | - | +| 3. Generate Node Refactor | 0/3 | Not started | - | +| 4. Model Search Dialog | 0/2 | Not started | - | +| 5. Image URL Server | 0/2 | Not started | - | +| 6. Video & Polish | 0/3 | Not started | - | diff --git a/.planning/STATE.md b/.planning/STATE.md new file mode 100644 index 00000000..aa9913e1 --- /dev/null +++ b/.planning/STATE.md @@ -0,0 +1,57 @@ +# Project State + +## Project Reference + +See: .planning/PROJECT.md (updated 2026-01-09) + +**Core value:** Provider infrastructure that dynamically discovers models from external APIs, enabling users to access hundreds of image/video generation models without hardcoding schemas. +**Current focus:** Phase 1 — Provider Infrastructure + +## Current Position + +Phase: 1 of 6 (Provider Infrastructure) +Plan: Not started +Status: Ready to plan +Last activity: 2026-01-09 — Project initialized + +Progress: ░░░░░░░░░░ 0% + +## Performance Metrics + +**Velocity:** +- Total plans completed: 0 +- Average duration: — +- Total execution time: 0 hours + +**By Phase:** + +| Phase | Plans | Total | Avg/Plan | +|-------|-------|-------|----------| +| — | — | — | — | + +**Recent Trend:** +- Last 5 plans: — +- Trend: — + +## Accumulated Context + +### Decisions + +Decisions are logged in PROJECT.md Key Decisions table. +Recent decisions affecting current work: + +(None yet) + +### Deferred Issues + +None yet. + +### Blockers/Concerns + +None yet. + +## Session Continuity + +Last session: 2026-01-09 +Stopped at: Project initialization complete +Resume file: None