Giter Site home page Giter Site logo

maxmmyron / clips Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 0.0 607 KB

Blazing-fast editing in the browser

Home Page: https://clippy.mov

JavaScript 3.24% CSS 0.18% HTML 0.50% Svelte 78.84% TypeScript 17.25%
editor sveltekit video-editor video-processor

clips's People

Contributors

maxmmyron avatar

Watchers

 avatar

clips's Issues

Improve media pool design

Dependent on #13

Media elements should:

  • be locked to same height
  • locked to editor aspect ratio #15

Media pool should:

  • support flex-col or flex-row depending on width

Reimplement loader for unresolved clips

Dependent on #43
Unresolved clip data should show the spinner again, but shouldn't be in media pool store until resolved. If rejected, clip disappears (or shows error on clip container, only action on container would be to remove.)

Implement dynamic media drag element styling

Media element should dynamically resize based on what is currently happening w.r.t. drag/drop events

Initial (equiv. dragstart)

  • MediaElement mousedown -> mousemove: element resizes from MediaElement size to something smaller

Hover events (equiv. dragenter)

  • mousemove -> Timeline hover: transforms to a line and snaps to where it would be placed
  • mousemove -> Preview hover: Preview video element shows some kind of indication that it can play the media

Mouseup events (equiv. drop)

  • mousemove -> Timeline mouseup: TimelineElement replaces media drag element, size transitions from 0 -> scaled duration width
  • mousemove -> mouseup (default behavior): element fades out, removed from tree

Hook up warnings/errors to cat

Depends on #40

Cat should use popover to display errors/warnings. Should be global sys for registering warnings (similar to "mow" click functionality but as a store)

Implement media element drag/drop

depends on #5

  • by default: visually similar to media pool element
  • over timeline: expands to width equivalent to media length, shows element that indicates where it would be placed

Discussion: Refactor stores

Current system for studio, media, timeline, and drag-drop system seems pretty messy.
There is a simpler solution out there that doesn't rely on a bunch of different stores.

Refactor design grid

Implement UI as a responsive 2x2 grid

May be best move to split 2x2 grid into two: a main 1col:2row grid, and one 2col:1row in each of these grid areas.

Improve media interfaces

Should split current interface into two types: one for uploaded media (which is used in media pool), and one for timeline media.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.