Git Product home page Git Product logo

houdini-samples's Introduction

Houdini Samples

Samples for the specifications of the Houdini task force.

Each sample has its own folder with a link to a video showing that sample, as no vendor has published a version of their browser with support for any of the Houdini standards yet.

License

Apache 2

houdini-samples's People

Contributors

artdiniz avatar benfoxall avatar bfgeek avatar d4tocchini avatar flackr avatar gagyibenedek avatar hontas avatar jenniferlynparsons avatar jul1u5 avatar junyi avatar keyboardsurfer avatar majido avatar njvack avatar omariosouto avatar paullewis avatar rongjiecomputer avatar shospodarets avatar stephenmcgruer avatar surma avatar una avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

houdini-samples's Issues

Off main thread

The docs on this are a bit old and even new ones from Sept say 'we are working on getting paintAPI pant worklets off the main thread.' Is there an update on there this is at? Can we use in production with a pollyfill for Safari? Thanks.

[css-properties-values-api] Why does the draft use JS to define a new property?

I'm sure the writers had a good reason to do this, but I don't see why registering a new custom property has to be done from JS.
IMHO a syntax like

--custom-prop: * <length>;

has a few major advantages compared to

CSS.registerProperty({
    name: '--custom-prop',
    syntax: '<length>',
    initialValue: '*'
});
  • Shorter, more readable;
  • More natural environment. One of the cool things about typed custom properties is, that we can use them to animate stuff that was only possible using JS before. Using the alternative syntax that would be truly CSS only. Instead, we have to add a small piece of JS code to our project, that has no valuable info to the rest of the JS codebase. I know that separation of concerns between CSS and JS has gotten a bit trickier since CSS-in-JS, but this syntax seems like a straight breach of this principle.
  • It gives the possibility to declare non-global typed properties.

I guess a PostCSS plugin could make both of these syntaxes possible, I just don't understand the initial decision.
What am I missing?

Attribute Delay, Iterations, Fill not working

<div class="small"><img src="images/01.jpg" /></div> var smallContent = document.querySelector('.small'); new KeyframeEffect(smallContent, [{ 'opacity': 1 }, { 'opacity': 0 }], { duration: 7, fill: 'forwards', delay:5000, iterations:1 })

In the above keyframe effect, the below mentioned options are not working:

  1. Delay
  2. Iterations
  3. Fill

From html page we can only call either “play()” to start the animation or “cancel” to stop and remove the animation.
How to handle “Pause” and “Finish” animations?

Also, no documentation regarding, how to pass values to “additionalTimelines_” variable of “WorkletAnimation” class.
Need your input.

Tried Browser versions:

  1. Google Chrome - 64.0.3282.186
  2. IE 11
  3. IE Edge

Twitter Demo says CSS Paint API required

The Twitter demo says that the CSS Paint API is required, however, my understanding is that the Paint API is currently supported and the Demo is actually for the Animation API?

Worklet scope compared to Web Worker scope

Hi 👋
Thanks for this module! Your examples have been very helpful.
Now, I'm confused about the scope of Worklets, the posts about worklets say they are like a lightweight web wroker, so, because of some of their similarities I though I could use the sames APIs availaible for workers, but that isn't true.

My specific use case, is that I was trying to draw an Image from a paintWorklet.

Here is the code of my worklet

registerPaint('tiles', class {
  paint (ctx, geom, properties) {
    fetch('https://mdn.mozillademos.org/files/5397/rhino.jpg')
    .then(response => response.blob())
    .then(blob => createImageBitmap(blob))
    .then(bitmap => {
      ctx.drawImage(bitmap, 33, 71, 104, 124, 21, 20, 87, 104)
    })
  }
})

This throws that fetch is not defined

image

So the question is, what APIs are availaible from a paintworklet? or any worklet?

[css-paint-api] Where to place code that should only run once?

Where should one put a piece of code in a paintAPI worklet that needs to run only once (e.g. things you'd normally put in the constructor).
It's possible to do something like
this.x = this.x || this.calculateX()
in the paint method, but it feels a bit old school.

Video samples unavailable

When using provided links for video samples, for example- in the twitter-header folder, YouTube says the videos have been made private.
Is there any other way to check the samples out? Or do the links need updating?

(P.S- Trying to access the videos from India, if that is of any concern.)

Missing development instructions

I'm confused as to how we're meant to play with these demos locally?

CSS.paintWorklet is only available over https, so I've had no luck with a localhost server. And opening the html files directly leads to a CORS error for the js files.

Some instructions as to how we're meant to run these demos or develop against this API would be really helpful!

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.