For a UI framework, show me a pretty demo with some example snippet code next to it and I will read on. Otherwise, I'm not motivated -- this is not the way you want people to read about your UI framework.
<i>We use dependency injection to match State names to parameters of Behavior functions—the State numberOfStates gets injected into any Behavior function that lists is as a parameter, like function(numberOfStates).</i><p>We need to have a talk. First, this isn't dependency injection - you're passing in data. These "Behavior" functions may <i>depend</i> on the data, but that doesn't make this a <i>dependency</i>.<p>Oh, I can understand how you're confused. You see Angular doing it and reverse-engineered the term. But notice how in Angular it is used to pass services into controllers, services that the controller has a <i>dependency</i> on.<p>Also, notice how this "feature" is broken in production. Any website worth its salt will minify the assets, which changes function parameter names. You did notice that, right, that your clever little hack works great in your development environment but totally breaks when you minify your code? You are testing things minified, right?<p>Why would you spend any time at all working on a feature that is fundamentally broken in production? Kill your darlings.
Asking 10 people to explain what MVC is, and you'll get 11 answers ;) ! Having recently done a dive into this area, I would really recommend interested folks to patiently read this great article by Martin Fowler:
<a href="http://martinfowler.com/eaaDev/uiArchs.html" rel="nofollow">http://martinfowler.com/eaaDev/uiArchs.html</a><p>The web community has been done a great disservice by people popularising the phrase "MV*".
The core of famous is really an request animation frame loop that does css transitions to do animations with physics. Their demos uses absolute positioning on everything to get flickerfree animations. On top of that they've created various abstractions like angular directives and react components. It's very cool, but for simple animations in react or angular I turn to snabbt.js.<p>There are some open source projects that adds turn key components to famous, like famous-flex <a href="https://github.com/IjzerenHein/famous-flex" rel="nofollow">https://github.com/IjzerenHein/famous-flex</a> by Hein Rutjes. If you want demo's, then there's the famous "fan site" <a href="http://famousco.de/links/" rel="nofollow">http://famousco.de/links/</a>
Link to the framework page [0]. I couldn't find any demos there or in other pages, though. I couldn't figure out how to run the examples [1] and there's no live links of em either.<p>This is not specifically directed at Famous... Why don't you [framework creators] show off REAL freaking apps? Show me a reasonably sized application that handles sophisticated user interactions. How do you handle routing? Data fetching / caching? Production builds? Testing environment? Dealing with your everyday CRUD? It's alright if your framework is meant as a framework that only handles some specific things, show a real-world example of the framework to highlight how it makes things easier/better/simpler/faster. I don't want to see TodoMVC or single-file examples. I know it's absolutely NOT sexy, but it's most of what I'll be having to deal with in my day-to-day work as a developer. (The only frontend framework that I know of that does a tremendous job at this is ember. I don't use ember, but I have nothing but the utmost respect for its developers.)<p>Specifically to famous: You touch on the topic of building large applications with Famous in this link. Your lack of reference applications (although not necessarily unreasonable, as you just announced the alpha) does nothing to gain my trust as a developer. I'd love to see a non-trivial example application that shows the full picture of what an app would look like.<p>[0] <a href="http://famous.org/framework/" rel="nofollow">http://famous.org/framework/</a>
[1] <a href="https://github.com/Famous/framework/tree/develop/lib/core-components" rel="nofollow">https://github.com/Famous/framework/tree/develop/lib/core-co...</a>
The front-end framework space is highly competitive - There are lots of great options to choose from. Many companies are trying to gain developer mindshare in that area.<p>Famous, AngularJS, Polymer, React, RiotJS, CanJS, ... All really great options.<p>I think Famous will have trouble competing with React, Polymer 1.0 and the upcoming AngularJS 2.0 in the current 2D browser-based market. I think if something like Microsoft's hololens gains traction, Famous would greatly benefit - Its 3D features would help it stand out.<p>Most of the value of a 3D interface is lost when you project it on a 2D screen.
I hear from Famous as UI System, but what is (in simple words) Framework - Engine - The Machine - The User... the blog post is really confusing.<p>Got it after watch the Website:<p>"The Famous Framework is a new JavaScript framework for creating reusable, composable, and interchangeable UI widgets and applications. It balances declarative with imperative and functional with stateful, and it's built on top of the Famous Engine."
From the blog post it looks like alot of good work is being done here. I think most apps out there probably don't reach the level of complexity that would require a rethinking of MVC, but I have seen it and agree that some web applications have reached the need to think beyond what MVC can provide.<p>If I had to guess, I think some of the first web-related work (on what post-MVC web will look like) began several years ago when 'reactive' programming started becoming a hot topic.<p>Since it seems a new JS framework comes out pretty much every week, and some people express frustration in trying to filter through the noise, I would say to them that this one is definitely one to keep an eye on.
One thing that I like with a JS framework is when I can actually play around with a demo or two without cloning the repo. Call me lazy, but I don't see why a framework that is entirely client-side can't just put the demos up?
A shame they don't even mention Web Components or custom elements, considering that much of what they are addressing in terms of composability and interop with other frameworks is exactly addressed by these standards.
This BEST stuff looks great and I'm looking forward to using it. But it will be a nightmare to search for if this stuff takes off. You should consider changing it to something more unique.
The Javascript framework space isn't competitive...it's saturated for the exact same reason that the PHP framework space was saturated.<p>Javascript and PHP frameworks are all built on top of a language that does everything you need for the web before you even start the framework. Frameworks in both languages are basically an exercise in arranging things according to your personal preferences...and people have a wide range of preferences.
I'm excited about Famous. The initial negative reaction from the community reminds me of the initial negative approach towards React. My gut tells me it is going to be very famous.
I like the fact that development for applications is moving towards what game code seems to have been using.
Building components and re-rendering with new state when necessary actually much better than what we're currently doing.<p>Which is why I prefer React over Batman, Ember and Angular.<p>Btw, I feel like their concept of Behaviour Tree doesnt' really fit in with the Behaviour Tree's I read about.