Famous Engine – JavaScript library for animations and interfaces
famous.org
famous.org
Also, "famous" or "famo.us" is a BAD name. Sorry, but you can't google for help or tutorials. Google for "famous websites" or "famous tutorials", see what you get. :-/
slow going.
0.3 was doing a lot of unnecessary matrix multiplications on a frame by frame basis. It also produced a lot of garbage, resulting into a frame drop every time the GC ran.
Famous Engine produces basically no garbage at all. It has an event based system for updating transforms.
I apologize for your bad experience with "old" famous, but please keep in mind that we started from scratch.
(For disclosure I am an employee of famous)
Now its popping up again. Time to take it for another run. The problem in the past was a small/inactive/detached community imo, if there was an active community behind it, it would be amazing.
Also, the famo.us devs seem to expect a lot of community stuff to be happening in or around their offices, which is unfair to us overseas guys who can't go to a famo.us demo day in their office.
Maybe they should change the name to Famo Engine.
It was my task recently to optimize some animations (done with Web Animations polyfill) and even though all the profilers showed that CPU is doing almost nothing (GPU animated all the stuff) Chrome was using ~25% of CPU all the time which resulted in a noisy fan after a minute or two.
I feel like I’m missing something here, I believe there must be a way to do it…
Also are you limiting your framerate (not framework, sorry) to something reasonable?
Also I recommend not creating too many objects to be GC'ed.
Yeah, true, I don’t create any objects in that animation actually. I just do opacity animations (from 0 to 1 and vice versa) and some transforms sometimes (which are supposed to be 'cheap' according to some resources on the internet).
Years ago I added a 'snow' animation JS libary to a custom website which let little snow flakes drop during winter time. All just for fun. It turned out to be fun only for a few days until I got the first complaints about users not being able to use their computers anymore and mobile devices being barely able to scroll anything.
I also believe that there must be a better way for simple animations.
They got snow in their browser, and they still complained. People are so ungrateful.
Seriously though, this animation sounds fun and neat.
@keyframes spin {
0% { transform: scaleX(1); }
50% { transform: scaleX(-1); }
100% { transform: scaleX(1); }
}
.spin {
animation: spin ease-in-out 6s infinite;
}
All done on the GPU as far as I can tell...The only satisfactory way to do web animation I've found is to do it 100% in css by toggling classes. As soon as the JS interpreter gets involved in any way, things go south.
The Famous team is working on a framework that will interface with their core engine, making things far cleaner at the application level while facilitating less painful integration. Comparing that to various client-side frameworks will definitely make sense.
Also I'd argue that ThreeJS can make for better looking results:
I know MrDoob was inspired to duplicate the Famo'us periodic table demo in Three.js/CSS and in the other direction, well its goddam MrDoob, you can't work in web graphics and not be inspired by him.
Three.js can make far better looking results currently because it's a full-fledged, mature 3D engine. Famous isn't designed to compete with that. It's really intended to sort of merge DOM and 3D content so you can use both in a unified manner.
Also, trashing someone else's product while plugging your own in the same breath is simply poor taste.
Tone says a bit about people at famo.us
In fact, I found Famous via working on a personal project that heavily utilized the Three.js CSS3DRenderer.
While I love Three (and by extension MrDoob) very much, the experience left me with a healthy appreciation of what the Famous team is going for. I've tried to do the very same thing myself (fuse DOM and WebGL), and quickly realized all of the pitfalls involved.
At least they gave up trying to build an entire website with it =)
Edit: Looked at top and Chrome is using like 60% CPU when the famo.us page is loaded (and nothing else). Ouch. (2.4 core 2 duo)
Most missing chars seem to be capitalized. A few specifics: F, H, B, P, X
npm install -g famous-cli && famous init my-first-project && cd my-first-project && famous project deploy
..and nothing happens. Did I miss something obvious?
Also, I'm curious: are there any big companies using famo.us? Are there any non-trivial famo.us applications that we can look at?
* "famous project deploy" deploys your application to hub. It gives you a snippet that can be used in order to embed your widget on a website.
* "famous dev" starts the development server.
Deploying your widget requires an account, did you register via `famous register`?
That being said it should have given you an error message if that's the issue. I can't seem to be able to reproduce this.
Can you file an issue on https://github.com/Famous/famous-cli or post the platform + node/ io.js version you're on here?
Thanks.
(For disclosure I am an employee of famous)
add this: </div>
Does this mean I'll get accepted to YC ? (cue Eddie Murphy laugh)
For example:
- World Cup App Spotlight[2]
- InkaBinka[3] (Only the mobile apps?)
[1]: http://us5.campaign-archive2.com/home/?u=4656ba2b0a364690c85...
Unfortunately, I am very displeased by the first experience. Chances are that this is also my last experince.
I don't know what it is supposed to be but if it is a web tech, it is clearly not production ready.
(Slow on Firefox/Android, but that's to be expected)
<a href="https://github.com/Famous/famous" onclick="trackOutboundLink('https://github.com/Famous/famous'); return false;" class="main-nav-link">Github</a>
Not an important thing and definitely in the realm of `my fault`. The only script I see available to allow is google analytics.