Giter VIP home page Giter VIP logo

Comments (5)

faceyspacey avatar faceyspacey commented on May 28, 2024

Here's the biggest concern: the pragma babelrc option is scary. nobody wants to depend on some possible transpilation failure unless it's Facebook insuring it's all going correctly.

from recycle.

faceyspacey avatar faceyspacey commented on May 28, 2024

as soon as i started to hear that you had a custom compilation step, my interest decreased

from recycle.

domagojk avatar domagojk commented on May 28, 2024

Well, I have news!

It was my wish to create this library without the need of pragma transpiler options.
But I just couldn't do it. I also had a good reason why it couldn't be done. I think that was maybe a month ago.

So, I've opened my codebase now so I can answer your question.
But I don't remember what was the reason.

So I tried again.
I can't really believe it yet, so I need to test it out still, but it looks like this is it. All the examples are working! Recycle can now be used as a standard React component.

It was actually very easy.

It looks like I have a lot of work to do for this christmas, mostly on documentation. I guess is not a framework anymore :)

from recycle.

faceyspacey avatar faceyspacey commented on May 28, 2024

that is very good news. I think u may be on to something then. Don't give up just because initial response wasn't what you wanted. For example, cycle and mobx each struggled for a long time to gain acceptance. I'm actually surprised at how much acceptance Mobx has received. The moral of the story is that Mobx solved some real problems and the shear facts of its benefits prevailed over time. Mobx requires far less recomputation than redux (at least pre react-redux 5.0) because of the depedency graph of computations. And people eventually saw this.

I actually think ur best approach may be to make your "library" feel as small as possible, and sneak it into adoption. As a framework it feels big. So now that it can be a React library again, make it feel as small as possible. So developers have less fear of using it. Make it feel easily replaceable if they want to go back to Redux, etc.

In addition--and this may go against the core goals--but if you can, make it use Redux as a store. Make those serialized actions returned from actions() go to a redux store. For example: I don't wanna give up Redux devtools and time traveling. I have stayed away from observables and preferred sagas for this vary reason. I use the redux devtools and time traveling A LOT. I can't see myself living without it now. I think you want to be in that store. At this moment I'm not sure what features you will have to drop to do that, but I'd seriously think about it. Having a professional interface from observables to redux fulfills a real need.

It seems basically that reducers() would return reducers used by Redux, but your API makes enforces them to be only be able to be used by the component they are attached to.

In addition, you probably need a way for your API (likely your new HOCs) to choose between using local "component-level" reducers and standard redux reducers. All while powering the actions sent to the reducers with observable streams returned from actions().

from recycle.

domagojk avatar domagojk commented on May 28, 2024

As of version 0.6.0, Recycle can be used as a standard React library. I've updated the docs, but there is still work to be done for documentation.

Redux plugin should not be a problem to implement, but it would probably use some kind of "recycle-redux bindings". I'm pretty sure it can't be connect-ed like normal React component.
Will let you know when it's done.

from recycle.

Related Issues (20)

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.