Front-End Fundamentals
Minimum price
Suggested price

Front-End Fundamentals

A practical guide to front-end web development.

About the Book

Front-end web development is evolving. Long gone are the days of writing static HTML files with self-contained CSS. As web developers in this modern world, we need to understand and utilize an endless number of frameworks, plugins, techniques and more. Knowing the right tools to use and when to use them is key to building successful solutions.

This book came to be from the lessons we, the authors, have learnt through trial and error whilst working on front-end development projects ranging from enormous high-traffic sites such as MSNBCThe GRAMMYs and BravoTV to startups and experiments such as Drupalize.Me and BracketCloud  We want to share with you the tools that we use and the standards that we follow. Our ultimate goal is for you to walk away understanding the core concepts of front-end development so you can confidently go and work on your own projects.

This book is somewhat opinionated based on our experience, so you'll find some of the content heavily geared towards a particular way of doing things. Of course, there are many ways of accomplishing the same task in the world of front-end development; that's what makes it so accessible and yet so complicated. Learning one way of doing something can make learning the alternatives a much more palatable task, so we encourage you to look into any and all of the technologies presented herein and even go on to see if something else might better fit your needs.

Who is this book for?

The content in this book is aimed at those who are new to front-end web development. Regardless of whether you are a beginner or expert developer, the concepts outlined in this book are essential to embracing the rapidly evolving web.

If you hear yourself asking any of the following questions, this book will likely be very useful for you!

  • "What actually is front-end development?"
  • "How can I be a more efficient web developer?"
  • "What is Grunt/AngularJS/SASS/\<_insert popular tool name here_>?"
  • "How do I fit all of these front-end tools together into a project?"
  • "How can I build a front-end application that can scale?"

What does this book cover?


You'll learn what's expected from a front-end developer and get a short overview of the types of projects a front-end developer might be tasked with. We'll even take you through setting up your computer for local development.


We'll introduce some of the more popular JavaScript frameworks and template languages in use today. We'll cover the details of what exactly a 'framework' is and talk about the MVC pattern before getting into the details of installation and practical usage of 3 popular frameworks: AngularJS, Backbone.js and Ember.js.


There's a lot more to styling than just throwing CSS at your markup; that just leads to a big mess of unreadable spaghetti code sprinkled with `!important` parmesan. We'll cover CSS preprocessors like Sass, organizational methods for your styles, and the kind of impact your CSS may have on a project's performance.

Dependency Management

Getting your whole team on the same page code-wise can be challenging. Heck, even making sure you're using the same version of that awesome Ruby gem after an update can be a pain. This chapter on dependency management covers a number of really handy front-end package managers like `npm`, `Bower`, and `Bundler`. You'll learn what a package manager is and how to use it effectively to keep your project on track.


We'll go over how you can remove the tedium from front-end development and just get to work. You'll learn how to perform tasks like checking your JavaScript or CSS for errors whenever you save a file, minify your code to shave off some file size, and even how to automatically refresh your browser whenever something changes. Once you get started, you'll never look back.

About the Authors

Joe Fender
Joe Fender

Joe Fender lives in London and splits his focus between front-end and back-end development. Specializing in PHP, AngularJS and Drupal, Joe was the lead architect at Studio Umi, the largest Drupal shop in Japan before joining Lullabot to work on awesome websites such as Drupalize.Me and MSNBC.

In his spare time, Joe likes to collect shoes and work on side projects. But never at the same time.

Carwin Young
Carwin Young

Carwin Young is an expert front-end developer living in Springfield, Missouri. He has over 8 years experience working on the front-end. He was the second front-end developer to work at Lullabot where he has played a key role on building websites for clients such as MSNBC, BravoTV and the GRAMMYs.

Carwin loves to share his expertise. He has spoken on topics such as Rapid Drupal Development at DrupalCamp Chicago, is a co-organizer for the Springfield Drupal meet-up and is a regular contributor to the Front-end Rapport, an online magazine and newsletter for front-end developers.

Table of Contents

  • About the Authors
    • Joe Fender
    • Carwin Young
  • Introduction
    • Who This Book Is For
    • An Overview of This Book
    • Example Code
    • Contacting the Authors
  • Getting Started
    • Expectations of a Front-End Developer
    • Setting Up Your Local Environment
  • Frameworks
    • Model-View-Whatever Architecture
    • Single-Page Applications
    • AngularJS
    • Backbone.js
    • Ember
    • Summary
  • Styling
    • Responsive Web Design
    • Authoring Methodologies
    • Preprocessors
    • Performance and CSS
    • Styling Summary
  • Dependency Management
    • What is a Package Manager?
    • Node.js and the Node Package Manager (npm)
    • Bower
    • Bundler
    • Documentation
    • Summary
  • Automation
    • Task Runners
    • Grunt
    • Gulp
    • CodeKit
    • Yeoman
    • Other Tips
    • Summary
  • Summary
  • Appendix
    • Accessibility
    • Automation
    • Deployment
    • Learning Resources
    • Frameworks
    • Languages
    • Online Services
    • Package Managers
    • Performance
    • Software
    • Styling
    • Templating
    • Testing
    • Version Control
    • Web Servers

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

80% Royalties. Earn $16 on a $20 book.

We pay 80% royalties. That's not a typo: you earn $16 on a $20 sale. If we sell 5000 non-refunded copies of your book or course for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $13 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub