Skip to content

Conversation

Copilot
Copy link
Contributor

@Copilot Copilot AI commented Aug 18, 2025

This PR implements a new projects feature that allows users to collect video cuts from multiple streams into projects before creating episodes, addressing the need for better organization and workflow flexibility in the video editing process.

What was added

Projects CRUD Management:

  • Complete React Admin resource implementation with List, Create, Edit views
  • Full API endpoints with mock data for development
  • Navigation integration in the main menu
  • Search and filtering capabilities

Enhanced VideoEditor Workflow:

  • New ExportOptionsDialog component that allows users to choose between:
    • Creating episodes directly (preserving existing workflow)
    • Sending cuts to an existing project (new aggregation workflow)
  • useSendCutsToProject hook for seamless project integration
  • Real-time project loading and selection

Architecture Improvements:

  • Added projects resource to data provider and resource map
  • Enhanced VideoEditor with dual workflow support
  • Proper data structure for collecting cuts from multiple streams
  • User feedback and error handling throughout

Key Benefits

  • Multi-stream aggregation: Users can now collect cuts from different streams into a single project
  • Workflow flexibility: Choose immediate episode creation or project-based organization
  • Better editorial control: Organize and review cuts before final episode production
  • Backward compatibility: Existing direct episode creation workflow is preserved

Data Flow

  • Before: Streams → Video Clips → Episodes (direct)
  • After: Streams → Video Clips → Projects → Episodes (with aggregation option)

The implementation follows existing React Admin patterns and maintains consistency with the current codebase architecture. All TypeScript compilation passes, tests are green (68/68), and the production build is successful.

Projects List Page

Fixes #101.


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI and others added 3 commits August 18, 2025 23:28
Co-authored-by: saebyn <185030+saebyn@users.noreply.github.com>
Co-authored-by: saebyn <185030+saebyn@users.noreply.github.com>
…integration

Co-authored-by: saebyn <185030+saebyn@users.noreply.github.com>
@Copilot Copilot AI changed the title [WIP] projects ui Add projects UI as intermediate layer between streams and episodes Aug 18, 2025
@Copilot Copilot AI requested a review from saebyn August 18, 2025 23:43
Copilot finished work on behalf of saebyn August 18, 2025 23:43
@saebyn saebyn marked this pull request as ready for review August 19, 2025 01:39
@Copilot Copilot AI review requested due to automatic review settings August 19, 2025 01:39
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR implements a new projects feature that creates an intermediate organizational layer between streams and episodes, enabling users to collect video cuts from multiple streams before creating final episodes. The implementation adds complete CRUD functionality for projects, enhances the VideoEditor workflow with export options, and maintains backward compatibility with the existing direct episode creation flow.

  • Adds full projects resource with React Admin CRUD views and API mock endpoints
  • Introduces ExportOptionsDialog component providing dual workflow options (direct episodes vs project aggregation)
  • Implements useSendCutsToProject hook for seamless project integration with proper data transformation

Reviewed Changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/resources/streams/VideoEditor.tsx Enhanced with ExportOptionsDialog integration and dual export workflow
src/resources/projects/index.tsx New projects resource configuration for React Admin
src/resources/projects/List.tsx Projects list view with filtering and search capabilities
src/resources/projects/Edit.tsx Simple form for editing project title and description
src/resources/projects/Create.tsx Creation form for new projects
src/ra/dataProvider/resourceMap.ts Added projects mapping to API endpoints
src/mocks/handlers/internal.ts.backup Large mock data file (appears to be backup/generated)
src/mocks/handlers/internal.ts Added projects API mock handlers for development
src/hooks/useSendCutsToProject.ts Custom hook for sending video cuts to projects with proper data transformation
src/components/molecules/ExportOptionsDialog.tsx Modal dialog for choosing export destination (episodes vs projects)
src/App.tsx Registered projects resource in the main application

@saebyn saebyn merged commit e684906 into main Aug 24, 2025
4 checks passed
@saebyn saebyn deleted the copilot/fix-101 branch August 24, 2025 21:22
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.

projects ui

2 participants