Giter VIP home page Giter VIP logo

Comments (14)

121onto avatar 121onto commented on May 18, 2024 3

I've been working with React+ Redux to build replacement Spree fronted. You can get up and running with only a few modifications. This project helped me get my bearings.

React ain't bad. Its much more accessible than it was when I first looked at it in 2015. I am enjoying my time with it!

from solidus.

cbrunsdon avatar cbrunsdon commented on May 18, 2024

@hhff we have no plans to support the spree 3.0 backend, sorry.

We do, however, have lots of plans to clean up, improve, and eventually re-style the backend, but don't have any plans to ever use the spree 3.0 codebase. Hawthorn is making some good progress but it'll be a while before it noticeably looks or works better than it does now.

from solidus.

BenMorganIO avatar BenMorganIO commented on May 18, 2024

@cbrunsdon I'm 👍 and using Backbone.

from solidus.

athal7 avatar athal7 commented on May 18, 2024

@BenMorganIO it's worth taking a look at React as well. We've been having a lot of success / enjoyment with it on our frontend. Would be happy to share knowledge

from solidus.

hhff avatar hhff commented on May 18, 2024

While it's a long way off - I eventually want to support ember-cli backends with Spree Ember. I've found most Rails devs grok Ember super quick. Might make sense to go with something heavily conventional on the backend for such a large & complex OSS project

from solidus.

BenMorganIO avatar BenMorganIO commented on May 18, 2024

I'm 👎 on React, mainly because I've had such a bad Angular experience and React just feels like a de ja vu... If I hadn't had such a bad Angular experience, I might be more neutral to the decision and be willing to try React out, but there's just so many things similar between the two frameworks that I'm unwilling to give React a shot.

  • Angular: Lets change best practice.
  • React: Lets change best practice.
  • Angular: Made by Google.
  • React: Made by Facebook.

I just don't feel like I should pick a framework (no matter how fab it is) if they want to change how to do best practice. With backbone and ember, they aren't changing best practice; they're leading by example. Angular and React just seem to want to pull you into their own world. Thing is, its usually a world I never feel comfortable fitting into.

Backbone has Jeremy Ashkenas (maintainer of Underscore.js, Coffeescript, and Docco.js) and Ember has Yehuda Katz (Rails, Bundler, Thor, Handlebars). Angular has Google. React has Facebook. I want to opt for the people, not for the company.

All in all, I'm not convinced Angular or React are the way to go. Hope this description helps communicate my feelings about the JS frameworks.

from solidus.

hhff avatar hhff commented on May 18, 2024

React is great of you only need Ember Components :trollface:

from solidus.

BenMorganIO avatar BenMorganIO commented on May 18, 2024

@hhff lol

from solidus.

athal7 avatar athal7 commented on May 18, 2024

@BenMorganIO I'm curious to hear more about your specific negative experiences with React. We've actually found it quite easy to sprinkle a bit in here and there along side other js structures and significant server-side rendering, and found it to be quite opposite to Angular in terms of pulling you into its own world and opinionated-ness, given that React itself is just the view layer. Additionally, some of the Flux frameworks allow the use of non-react view components.

from solidus.

hhff avatar hhff commented on May 18, 2024

Jah - I actually like React a lot. I've learnt a ton from it.

In my experience though, for a successful React build (I actually did a Spree storefront in React a while back), you need to sprinkle a lot more than "just react".

"Just react" actually encourages bad inter-app communication practices. That's where Flux comes in to save the day!

That said, So once you've got React + React Router + Flux (and eventually Relay / GraphQL, plus some custom code thrown in to bolt it all together), your FE stack is looking almost identical to Ember + Ember Data.

The difference being that Ember + Ember Data is built to work together perfectly, has first class support for Rails, and if u squint your eyes, it almost looks like a Rails project.

Plus, almost all Ember Addons are heavily tested, scored (partly on their test coverage), can be added to a project with a single line install, and often provide Rails style Generators.

Oh and Ember CLI has a tooling built in. No need to write a Grunt/Gulpfile. Just ember new app then ember install ember-cli-sass then start coding.

Ember Engines are not far off either. I couldn't think of a "more manageable" way to build a robust frontend for something as complex as Spree.

TLDR: React is almost always slower to build with, and certainly harder to manage complexity with. It's definitely "easier" to grok for beginners though, and for sure easier to incorporate into an existing project.

from solidus.

athal7 avatar athal7 commented on May 18, 2024

Thanks for the detailed comparison of your experience @hhff. Very helpful context!

from solidus.

hhff avatar hhff commented on May 18, 2024

👍 no worries @athal7 !

from solidus.

BenMorganIO avatar BenMorganIO commented on May 18, 2024

@athal7 I'm more gun shy of React. It felt like a dejavu from when I did AngularJS. Some issues that I had with Angular was that there was no convention. This made it too easy for one developer to have their own style even down to where they store files vs another dev. I've one project with ~100 Angular files and some of them 900 lines long. This was a "rockstar" Angular dev. Test suite: 8 tests, 8 failures. I was fairly unwilling to touch the Angular code or volunteer for it. I also spent a significant time learning and doing Angular. I never felt like I was making progress. I just wasn't wrapping my head around it. Even after a year of usage.

This seems to be the type of projects I end up on when its Angular. The convention is the big thing to me. This means anyone who's getting started with JS is enforced to use convention and best practices. Ember also comes with a linter and OMG I ❤️ it so so much. Having worked on big projects where bikeshedding on code style can get slightly out of hand, I love how linters can help minimize it.

I haven't been in the Ember world for too long TBH. I'm not an active user, but it 15 minutes I'm able to do 3 days worth in Angular.

from solidus.

hhff avatar hhff commented on May 18, 2024

👍 @BenMorganIO

from solidus.

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.