Skip to content

Initialize FXRadio v2 Migration Foundation - #100

Open
Joseph5610 wants to merge 9 commits into
masterfrom
feature/modern-rewrite-v2-foundation-16045986704629427077
Open

Joseph5610 wants to merge 9 commits into
masterfrom
feature/modern-rewrite-v2-foundation-16045986704629427077

Conversation

@Joseph5610

Copy link
Copy Markdown
Owner

This initial commit establishes the foundation for the FXRadio v2 rewrite. It transitions the app from legacy TornadoFX to a modern Tauri + React stack, meeting the user's requirements for a macOS look-and-feel and cross-platform (Desktop + Web) support. Key features include a working station browser, audio playback engine, and a Rust bridge for stream metadata.


PR created automatically by Jules for task 16045986704629427077 started by @Joseph5610

- Bootstrap Tauri 2.0 project with React, TS, and Tailwind
- Implement macOS-inspired UI shell (Sidebar, Player, Station Grid)
- Port Radio Browser API services and core types
- Implement Rust command for ICY metadata extraction
- Configure Zustand for state and TanStack Query for data fetching
- Set up PWA support via Vite PWA plugin
- Add MIGRATION_PLAN.md documenting the rewrite strategy

Co-authored-by: Joseph5610 <26581376+Joseph5610@users.noreply.github.com>
@google-labs-jules

Copy link
Copy Markdown

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

google-labs-jules Bot and others added 8 commits May 8, 2026 15:29
- Add .vscode/tasks.json for one-click build and dev workflows
- Add .vscode/extensions.json with recommended toolchain
- Create comprehensive README.md with setup and build instructions
- Ensure all dependencies and build artifacts are correctly configured
- Finalize initial migration framework in fxradio-v2 directory

Co-authored-by: Joseph5610 <26581376+Joseph5610@users.noreply.github.com>
- Track .vscode/tasks.json by updating .gitignore
- Implement search functionality using Radio Browser API
- Enable sidebar navigation for Browse, Favorites, Countries, and Tags
- Add functional Countries view with flag icons and tag-based search
- Set default dark mode and FXRadio orange brand colors
- Restore original FXRadio logo in sidebar
- Update MIGRATION_PLAN.md with current status

Co-authored-by: Joseph5610 <26581376+Joseph5610@users.noreply.github.com>
…ng, and VS Code configs

- Implement real-time search using Radio Browser API and TanStack Query
- Enable sidebar navigation (Browse, Favorites, Countries, Tags)
- Restore original FXRadio branding (logo, orange accent color, dark theme)
- Add functional Countries view with flag icons
- Ensure .vscode/launch.json and .vscode/tasks.json are tracked by Git
- Update MIGRATION_PLAN.md with current status and next steps

Co-authored-by: Joseph5610 <26581376+Joseph5610@users.noreply.github.com>
- Implement functional search and navigation (Browse, Favorites, Countries, Tags)
- Restore original branding (orange accent, logo, dark theme)
- Add comprehensive .vscode/tasks.json with localized dev and build tasks
- Add .vscode/launch.json using node-terminal for simplified one-click execution
- Update .gitignore to track essential VS Code configurations
- Provide detailed MIGRATION_PLAN.md for future development phases

Co-authored-by: Joseph5610 <26581376+Joseph5610@users.noreply.github.com>
…ild configurations

- Fix E0255 name collision in Rust by wrapping commands in a module
- Make get_icy_metadata synchronous in Rust to align with blocking reqwest
- Simplify VS Code launch.json to use node-terminal for Desktop/Web execution
- Update tasks.json with localized Slovak labels and problem matchers
- Mark Phase 3, 4, and 5 as complete in MIGRATION_PLAN.md
- Ensure branding (logo, title) is correctly applied in the frontend foundation

Co-authored-by: Joseph5610 <26581376+Joseph5610@users.noreply.github.com>
- Initialize `fxradio-v2` with Tauri 2.0, React, TS, and Tailwind.
- Implement Radio Browser API client and TanStack Query integration.
- Add Rust-based ICY metadata service for live stream song titles.
- Redesign UI with macOS-inspired dark theme and orange branding.
- Replace player timeline with metadata display.
- Migrate legacy assets (icons, logo).
- Configure VS Code tasks and launch settings with Slovak localization.
- Provide comprehensive MIGRATION_PLAN.md.

Co-authored-by: Joseph5610 <26581376+Joseph5610@users.noreply.github.com>
- Replaced legacy JavaFX/TornadoFX with Tauri 2.0, React, TS, and Tailwind.
- Implemented macOS-inspired UI with live metadata extraction (Rust backend).
- Integrated Radio Browser API and persistent state (Favorites, History, Volume).
- Added localized VS Code tasks and launch configurations.
- Documented the transition in MIGRATION_PLAN.md.

Co-authored-by: Joseph5610 <26581376+Joseph5610@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant