
Famous Engine – JavaScript library for animations and interfaces - dumindunuwan
http://famous.org/
======
onion2k
The bit that I find most impressive is the mixed mode demo ...
[http://famous.org/learn/MixedMode/index.html](http://famous.org/learn/MixedMode/index.html)
... Putting an iFrame on a 3D model and still being about to use the page
that's loaded is cool. The problem with that is that there are so few use
cases where you'd actually want to do that.

~~~
mrdoob2
2 years ago... [http://learningthreejs.com/blog/2013/04/30/closing-the-
gap-b...](http://learningthreejs.com/blog/2013/04/30/closing-the-gap-between-
html-and-webgl/)

~~~
coderzach
You should have raised 30mm in funding for three.js ;-)

~~~
araes
I still use three.js for most of my visualization projects. That is some good
tech. Ashes of Papervision risen better.

------
steaminghacker
I tried to build a website with the "old" famo.us, but it was slow going, once
you'd got past the initial setup. You're on your own for widgets!

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.

~~~
alexanderGugel
Famous Engine is a complete rewrite.

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)

~~~
xtian
That's interesting, but none of the complaints the poster you're responding to
brought up had to do with matrix multiplication or garbage collection.

------
pimpl
Has anyone actually managed to loop animations on the web without putting the
CPU on fire?

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…

~~~
m_st
Same here on Firefox 31 on Windows 8.1. 25% used on my dual-core i5 with HT.
This just sucks.

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.

~~~
RickHull
The site used 100% of my old Core 2 Duo's CPU on Iceweasel / Jessie; brought
the machine to its knees. LOL js.

------
popham
The landing page isn't janky this time around--that's an improvement. I was
hoodwinked by the last media blitz, so I'm very shy to play with Famo.us a
second time around. Elephant in the room: What has been learned and improved
from the previous false-start(s)? For me, a "Hey, look at me!" is insufficient
this time around, but I would find a list of improvements convincing (bonus
points for some interleaved JS wisdom).

------
thomasfl
Famo.us is really fast, but the minimal snabbt.js does most of the same
animations tricks and is very easy to use. It includes a minmal physics
engine. [https://github.com/daniel-
lundin/snabbt.js](https://github.com/daniel-lundin/snabbt.js)

------
jongdubois
From a development efficiency perspective, Famous is not as good as Angular or
React. From a rendering perspective, it's not as good as three.js. It's not
yet a leading tool. Jack of all trades, master of none. Maybe it will make
more sense when VR platforms become mainstream.

~~~
rl3
What was released today was a rewrite of the Famous core engine, so you can't
really compare it to Angular or React. Three.js is a far better comparison,
though the two have different specialties since Famous isn't trying to be pure
WebGL.

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.

~~~
btown
To expand on this, Famous's Node class [0] is rather like a DOM node, except
far more powerful. You could imagine a React component that renders a tree of
virtual Nodes, diffs that with an existing tree, and transitions properties
accordingly. But that will be built on Famous, just like react-canvas [1]
needed the canvas API to exist. Baby steps.

[0]
[http://famous.org/docs/core/Node.html](http://famous.org/docs/core/Node.html)

[1] [https://github.com/Flipboard/react-
canvas](https://github.com/Flipboard/react-canvas)

------
bhouston
Why does this look like Three.JS code? It seems to have very similar
capabilities (although Famo.us seems to have less features) and even the code
seems to be familiar to me as a ThreeJS guy.

Also I'd argue that ThreeJS can make for better looking results:

[https://clara.io/view/193070f2-e8af-4afc-a531-9d82338b5288](https://clara.io/view/193070f2-e8af-4afc-a531-9d82338b5288)

~~~
rl3
Code that deals with 3D space tends to look similar. Design patterns that work
in such contexts tend to be common sense.

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.

~~~
puppetmaster3
* 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

~~~
rl3
I'm not an employee at Famous, nor have I ever worked for them in any capacity
whatsoever.

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.

------
empressplay
Quite slow on Chrome...

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)

------
partisan
I am sure that iPhone users are not your target audience, but the site is
almost unusable because of the large header and menu bar at the top of the
screen.

------
pmontra
Opera 29 Android: first two demos on the home page ok, last two demos black.
Chrome 42: same thing. Firefox 38: same but much slower. Stock browser
(4.4.2): everything works, a bit slow. I'm really surprised: this should be
the most old browser on this tablet. Drivers integration?

~~~
TD-Linux
On a Nexus 7 2013 and Firefox, all of the demos work but are quite slow.

------
slowmotiony
I can't see random letters and console is screaming about errors left and
right. Firefox 31.

~~~
natmaster
Why are you 7 versions behind?

~~~
janfoeh
Probably the last Firefox ESR release: [https://www.mozilla.org/en-
US/firefox/organizations/faq/](https://www.mozilla.org/en-
US/firefox/organizations/faq/)

------
evv
I like their new branding and docs. It looks really easy to get up and
running, but the basic "hello world" isn't working for me..

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?

~~~
alexanderGugel
* "famous init my-first-project" starts a new project

* "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](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)

~~~
evv
Sure. A nice error message would clear it right up

[https://github.com/Famous/famous-
cli/issues/8](https://github.com/Famous/famous-cli/issues/8)

------
tomh-
Are there any examples of products that use the famous framework in
production? The lack of case study examples on their website worries me a
little.

~~~
Leftium
They regularly spotlight apps on their mailing list[1].

For example:

\- World Cup App Spotlight[2]

\- InkaBinka[3] (Only the mobile apps?)

[1]: [http://us5.campaign-
archive2.com/home/?u=4656ba2b0a364690c85...](http://us5.campaign-
archive2.com/home/?u=4656ba2b0a364690c8530bc1e&id=3293122916)

[2]: [http://wc.complex.com/](http://wc.complex.com/)

[3]: [http://inkabinka.com/](http://inkabinka.com/)

~~~
phpnode
Those two examples are really poor, the usability is terrible in both cases,
and the effects are not impressive enough to be worth giving up core features
like zoom and copy / paste.

~~~
bshimmin
Yeah, agreed. I looked at the football one and it reminded me of low quality
Flash work circa 2006... until I had to close the tab because I was worried my
MacBook Pro was going to melt my glass desk.

------
s9w
I can see literally no text on chrome, and some capital letters are missing on
firefox. All latest versions. Even without ad blocking

------
reality_czech
Looks pretty good with the elinks web browser.

~~~
frozenport
Hover animation is broken in Lynx, lamentable

------
staticelf
I can't seem to get started with this. Their seed repo does not allow me to
clone it with the git command. And when using the init functionality as
displayed on the front page there is no way to actually setup the damn
webserver.

Unfortunately, I am very displeased by the first experience. Chances are that
this is also my last experince.

------
huhtenberg
Opening this page caused Firefox to go into a full swapfest mode, rendering
the page unresponsive for several seconds.

------
makeitrein
Hmm, how does Famo.us stack up to GreenSpck's GSAP? I've been tinkering with
GSAP for the past week and have been pleasantly suprised with its
capabilities, but I don't know if its the more performant of the animation
libraries.

------
bikeshack
Why is it called famous?

~~~
bshimmin
Because it always gets on the front page of Hacker News.

------
MCRed
Can't really see the code on the left, it's blocked by the big margins and the
split with the webGL on the right. Enlargement gets rid of the margins but
also makes the text in the code box bigger.

------
Nomikos
I saw 4 demos, they all worked fine on Firefox and Chrome (uptodate versions).
Bit heavy on the CPU, I imagine that impacts some machines' performance.

------
p4bl0
The linked website makes my browser crash… (Firefox 31.6).

I don't know what it is supposed to be but if it is a web tech, it is clearly
_not_ production ready.

~~~
krisdol
The company I work for always only supports the latest 2 releases of firefox
and chrome. I'm not arguing for or against this being production ready, but I
don't think Firefox 31 support should determine whether something is
production ready.

~~~
p4bl0
Firefix 31 is the current stable (ESR) version. Just look at how many people
run it here in this thread.

------
qhoc
I am wondering the mobile strategy is completely abandoned because none of the
examples work or look good on the iPhone. They have weird edgy / sharp
borders. Didn't feel 60fps at all. Plus the mobile layout is completely
broken. They seem to work fine on Macbook though. BUT the Twitter app example
needs to go away. It just looks bad, OK!?

------
AndrewDucker
Works fine for me, latest version of Firefox on Android and Windows.

(Slow on Firefox/Android, but that's to be expected)

------
Maarten88
Two out of four demos on that page don't run on IE11. And all 4 have ugly
scrollbars. Nice for demos but not yet for anything real.

~~~
orbifold
They all work fine on Project Spartan, which uses Microsoft's new EdgeHTML
engine.

~~~
bkyan
Is that (Project Spartan) available for public download?

~~~
orbifold
It is in the preview of Windows 10.

------
anonfunction
This would be perfect for a chart / graph library.

------
smrtinsert
link error: Vertex shader sampler count exceeds the maximum vertex texture
units (4).

------
M8
It's interesting how JS was created for animations, yet is typically failing
even at that.

------
grimgrin
Without adjusting uBlock settings I can't actually click the Github link up
top. I can click all the other links. Must be something goofing up because:

<a
href="[https://github.com/Famous/famous"](https://github.com/Famous/famous")
onclick="trackOutboundLink('[https://github.com/Famous/famous');](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.

