Browse Source

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 <noreply@anthropic.com>
handoff-20260429-1057
shrimbly 6 months ago
parent
commit
48b6750465
  1. 103
      .planning/ROADMAP.md
  2. 57
      .planning/STATE.md

103
.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 | - |

57
.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
Loading…
Cancel
Save