What is Discourse's opinion on React


#1

If I am saying stupid stuff, please correct me as i don’t know how to “web” stuff. I posted this so that i can hear the opinions of more experienced developers, along with some examples if there are any.

I know that Discourse uses Ember for UI stuff but right now, i see that all the craze is for Facebook’s React and (to a lesser extent?) for Vue or Angular.

What is your opinion on other UI frameworks? Would others be interesting for Discourse? What should a noob like myself get into? (right now i am learning from freeCodeCamp )

Why do you like ember and not the others?

Note that I am asking this as I have a long term wish: I want to make a ~utility~ website for someone in which to store as much details about “paleontology” stuff as possible. The items have to be indexable, searchable, comparable, must have lots of details, location, pictures, can refer to each other, blah, blah.

So far i have only been a backend developer (java), and all this frontend world seems super-mega-much-more complicated.


(Bhanu Sharma) #2

If I’m not mistaken, react powers the discourse mobile app.


#3

Aren’t they all a bit of a muchness? Ember seems excellent, especially the handlebar template concept. The main issue currently is surely that it’s not set up for Ember CLI, not that they need another framework …

The main test of a modern framework is that it can deliver a Progressive Web App. Ember seems to handle things well!


(Karl Romanowski) #4

All the web front-end technologies work fine, an Angular or React rewrite wouldn’t make the UI better, it would only enable a larger community of developers to make plugins and theme components. It’s very difficult to find ember devs in my area, but angular and/or react are on almost every resume.


(Sam Saffron) #5

OK, I have a React-ion here…

Everything is awesome! Ember Awesome, React Awesome, Vue Awesome

But we picked Ember and are happy with our choice and do not see ourselves moving anywhere new any time soon.

Well… I can help here. If you want to hack on Discourse, learn Ember! There is a very lively community with tons of resources. If you do not want to hack on Discourse … well this is not the place to be discussing this :stuck_out_tongue_winking_eye:


(Erlend Sogge Heggen) #6

Definitely put Ember on your to-learn list if you wanna get into Discourse development. Angus has put an excellent reading list together here: How to start building stuff for Discourse if you're newbie (like myself)

But while you’re on FreeCodeCamp, I’d say stick with the material they’ve got. Most of what you’ll learn there will be generally applicable to any web development project anyhow.


#7

Okay, so it seems that the community is not as opinionated as i expected (hoped for?).

I’m unsure if Discourse dev is something that i want. It is true that it is an interesting platform, but i see a lot of features i wanted (and a lot more i never thought of) already here, so i’m good with this.

also,

that’s just awful, man :)).

Anyhow, thanks for all the opinions, but for now i’m not yet set on anything :^) .


(Kane York) #8

If you want hot opinions, here’s one:

The use of React would make it extremely hard to customize the JS app’s behavior. Ember’s design is much more open to on-the-fly changing of behavior, like you do in a theme script.


However, if you’re trying to use Discourse as a base to make some other application: I’d recommend avoiding that. Use Discourse as a discussion forum, because if you use it for anything that’s Not A Discussion Forum you’re going to have breakage from core changes and get stuck on an old version.

If you want to make your own webapp, go and make your own webapp, and you can use Discourse to talk about it :slight_smile:


#9

Oh, no no no

This is what i had in mind from the beginning.

What i am looking for is opinions from people who actually work with these technologies daily, on their +es and -es. Therefore thanks for that note about easier extensibility.


(Mittineague) #10

Not an easy question to answer without knowing what you want to do.

I think of most things web to be analogous to “tools”. For example, if you have two sledge hammers, a two pounder and a one hundred pounder, once you know how to use one, learning how to use the other is relatively easy. But if you want to break out wall slats the two pounder is the better choice, breaking rocks the one hundred pounder might be better. But if you are willing to put in more effort in order to have more control, a fifty pounder might be your choice. i.e. choose the tool based on the job and your preferences.

Getting back to code, what you’re asking for is a side-by-side comparison of two complex front ends which IMHO is a bit much to ask for. However, if you have something specific in mind, that could be a reasonable question that could be answered.