My whirlwind tour at Hack Reactor is coming to an end and while I’ll reflect on that experience in a separate post, I want to talk about my last couple of weeks working at Famo.us ☺

Introduction

As part of the Hack Reactor curriculum, we’re in contact with numerous potential clients who want us to work on small projects for them — it’s a great learning experience for us because we get to transition from purely learning JavaScript to solving real problems using the skills we’ve learned. The client I worked with is Famo.us and they’ve been a great supporter of Hack Reactor and their students.

What is Famo.us?

Famo.us Logo So what exactly does Famo.us do? They’ve built an amazing rendering engine that’s blazingly fast and allows for absolutely stunning animations on desktop and mobile browsers! Don’t believe me? Check out the examples here! The Famo.us framework aims to solve a difficult challenge with HTML5 — namely that it’s painfully slow to run for many HTML5 web apps that have animations.

At it’s current state, Famo.us performs very well but because it is a very new framework, there isn’t a ton of documentation available for users and there aren’t a lot of higher level abstractions to make it easier for developers to use. In particular, for developers who are used to the plug-and-play style of jQuery UI, many of Famo.us’ functionalities are too low level for them to use.

So What Did We Do?

One of Famo.us’ goals is to make it easily accessible to all types of developers and as such, our project was focused on building widgets that are similar to jQuery UI and making them simple and highly customizable. The idea here is that anyone and everyone should be able to build dynamic and beautiful web apps using Famo.us’ core widgets.

You might ask, “What’s a widget?” Well, imagine the Coverflow animation that appears on all Mac computers — that’s one of the widgets that my team built in Famo.us! Any developer who wants to use our Coverflow widget can simply provide the images and content they want to include and it’ll magically add the animation associated with Coverflow. If you want to take a look at an example of Coverflow, here’s one!

The other fun widget that my team built is called Reflowable. I’ve gone ahead and deployed a demo of our Reflowable widget here. To play with it, go ahead and resize your screen — and watch the magic happen! Depending on how large or small you resize your screen, it’ll magically animate and reposition itself. For the end user, this widget is simple to use and can be customized to have different animations and content displayed.

Conclusion

I’ve learned a ton during my 2.5 weeks at Famo.us and I’m super excited that the code we produced will be published into the core Famo.us codebase so that developers will be able to use and build upon our widgets. I’m looking forward to seeing other developers build amazing web apps that use our widgets!