Developing Backbone.js Applications


Book Description

If you want to build your site’s frontend with the single-page application (SPA) model, this hands-on book shows you how to get the job done with Backbone.js. You’ll learn how to create structured JavaScript applications, using Backbone’s own flavor of model-view-controller (MVC) architecture. Start with the basics of MVC, SPA, and Backbone, then get your hands dirty building sample applications—a simple Todo list app, a RESTful book library app, and a modular app with Backbone and RequireJS. Author Addy Osmani, an engineer for Google’s Chrome team, also demonstrates advanced uses of the framework. Learn how Backbone.js brings MVC benefits to the client-side Write code that can be easily read, structured, and extended Work with the Backbone.Marionette and Thorax extension frameworks Solve common problems you’ll encounter when using Backbone.js Organize your code into modules with AMD and RequireJS Paginate data for your Collections with the Backbone.Paginator plugin Bootstrap a new Backbone.js application with boilerplate code Use Backbone with jQuery Mobile and resolve routing problems between the two Unit-test your Backbone apps with Jasmine, QUnit, and SinonJS




React.js Essentials


Book Description

A fast-paced guide to designing and building scalable and maintainable web apps with React.js About This Book Build maintainable and performant user interfaces for your web applications using React.js Create reusable React.js components to save time and effort in maintaining your user interfaces Learn how to build a ready-to-deploy React.js web application, following our step-by-step tutorial Who This Book Is For If you're a front-end developer with knowledge of jQuery and its libraries, along with frameworks, such as Angular.JS and Backbone.JS, or native JavaScript development, and you wish to use the fastest web user interface library there is, then this book is ideal for you. What You Will Learn Install powerful React.js tools to make development much more efficient Create React elements with properties and children Get started with stateless and stateful React components Use JSX to speed up your React.js development process Add reactivity to your React components with lifecycle methods Integrate your React components with other JavaScript libraries Utilize the Flux application architecture with your React components Test your React components with Jest test framework In Detail Building web applications with maintainable and performant user interfaces is a challenge that many have faced for more than a decade, but no one has risen to this challenge quite like React.js. Today React.js is used by Facebook, Instagram, Khan Academy, and Imperial College London, to name a few. Many new users recognize the benefits of React.js and adopt it in their own projects, forming a fast-growing community. The speed at which React.js has evolved promises a bright future for those who invest in learning it today. React.js Essentials will take you on a fast-paced journey through building your own maintainable React.js application. Begin by exploring how you can create single and multiple user interface elements. Create stateless and stateful components and make them reactive, learn to interact between your components and lifecycle methods and gauge how to effectively integrate your user interface components with other JavaScript libraries. Delve deep into the core elements of the Flux architecture and learn how to manage your application using stores. Finish by going that extra mile with the Jest test framework, running multiple tests on your application and find solutions to scale it further without complexity. Style and approach The book adopts a step-by-step, hands-on approach with ample codes to ensure you learn React.js at a fast pace.




Full Stack JavaScript


Book Description

This is a hands-on book which introduces you to agile JavaScript web and mobile software development using the latest cutting-edge front-end and back-end technologies including: Node.js, MongoDB, Backbone.js, Parse.com, Heroku and Windows Azure. Practical examples include building multiple versions of the Chat app:•jQuery + Parse.com JS REST API•Backbone and Parse.com JS SDK•Backbone and Node.js•Backbone and Node.js + MongoDB The Chat application has all the foundation of a typical web/mobile application: fetching data, displaying it, submitting new data. Other examples in the book are as follows:•jQuery + Twitter RESP API “Tweet Analyzer”•Parse.com “Save John”•MongoDB “Print Collections”•Backbone.js “Apple Database”•Monk + Express.js “REST API Server” This book will save you many hours by providing a hand-picked and tested collection of quick start guides. RPJS has practical examples that allow to spend less time learning and more time building your own applications. Prototype fast and ship code that matters! What You will Learn: You should expect a basic understanding from a collection of quick start guides, tutorials and suggestions for the devel0pment apps discussed in this book. In addition to coding examples, the book covers virtually all setup and deployment step-by-step. You’ll learn from the examples of Chat web/mobile applications starting with front-end components and by the end we’ll put front-end and back-end together and deploy to the production environment. Who This Book is For: The typical programmer who wants to learn more about effective JavaScript coding.




Building Node Applications with MongoDB and Backbone


Book Description

Build an application from backend to browser with Node.js, and kick open the doors to real-time event programming. With this hands-on book, you’ll learn how to create a social network application similar to LinkedIn and Facebook, but with a real-time twist. And you’ll build it with just one programming language: JavaScript. If you’re an experienced web developer unfamiliar with JavaScript, the book’s first section introduces you to the project’s core technologies: Node.js, Backbone.js, and the MongoDB data store. You’ll then launch into the project—a highly responsive, highly scalable application—guided by clear explanations and lots of code examples. Learn about key modules in Node.js for building real-time apps Use the Backbone.js framework to write clean browser code, and maintain better data integration with MongoDB Structure project files as a foundation for code that will arrive later Create user accounts and learn how to secure the data Use Backbone.js templates to build the application’s UIs, and integrate access control with Node.js Develop a contact list to help users link to and track other accounts Use Socket.io to create real-time chat functionality Extend your UIs to give users up-to-the-minute information




Cross-platform Desktop Application Development: Electron, Node, NW.js, and React


Book Description

Build powerful cross-platform desktop applications with web technologies such as Node, NW.JS, Electron, and React About This Book Build different cross-platform HTML5 desktop applications right from planning, designing, and deployment to enhancement, testing, and delivery Forget the pain of cross-platform compatibility and build efficient apps that can be easily deployed on different platforms. Build simple to advanced HTML5 desktop apps, by integrating them with other popular frameworks and libraries such as Electron, Node.JS, Nw.js, React, Redux, and TypeScript Who This Book Is For This book has been written for developers interested in creating desktop applications with HTML5. The first part requires essential web-master skills (HTML, CSS, and JavaScript). The second demands minimal experience with React. And finally for the third it would be helpful to have a basic knowledge of React, Redux, and TypeScript. What You Will Learn Plan, design, and develop different cross-platform desktop apps Application architecture with React and local state Application architecture with React and Redux store Code design with TypeScript interfaces and specialized types CSS and component libraries such as Photonkit, Material UI, and React MDL HTML5 APIs such as desktop notifications, WebSockets, WebRTC, and others Desktop environment integration APIs of NW.js and Electron Package and distribute for NW.JS and Electron In Detail Building and maintaining cross-platform desktop applications with native languages isn't a trivial task. Since it's hard to simulate on a foreign platform, packaging and distribution can be quite platform-specific and testing cross-platform apps is pretty complicated.In such scenarios, web technologies such as HTML5 and JavaScript can be your lifesaver. HTML5 desktop applications can be distributed across different platforms (Window, MacOS, and Linux) without any modifications to the code. The book starts with a walk-through on building a simple file explorer from scratch powered by NW.JS. So you will practice the most exciting features of bleeding edge CSS and JavaScript. In addition you will learn to use the desktop environment integration API, source code protection, packaging, and auto-updating with NW.JS. As the second application you will build a chat-system example implemented with Electron and React. While developing the chat app, you will get Photonkit. Next, you will create a screen capturer with NW.JS, React, and Redux. Finally, you will examine an RSS-reader built with TypeScript, React, Redux, and Electron. Generic UI components will be reused from the React MDL library. By the end of the book, you will have built four desktop apps. You will have covered everything from planning, designing, and development to the enhancement, testing, and delivery of these apps. Style and approach Filled with real world examples, this book teaches you to build cross-platform desktop apps right from scratch using a step-by-step approach.




Async JavaScript


Book Description

With the advent of HTML5, front-end MVC, and Node.js, JavaScript is ubiquitous--and still messy. This book will give you a solid foundation for managing async tasks without losing your sanity in a tangle of callbacks. It's a fast-paced guide to the most essential techniques for dealing with async behavior, including PubSub, evented models, and Promises. With these tricks up your sleeve, you'll be better prepared to manage the complexity of large web apps and deliver responsive code. With Async JavaScript, you'll develop a deeper understanding of the JavaScript language. You'll start with a ground-up primer on the JavaScript event model--key to avoiding many of the most common mistakes JavaScripters make. From there you'll see tools and design patterns for turning that conceptual understanding into practical code. The concepts in the book are illustrated with runnable examples drawn from both the browser and the Node.js server framework, incorporating complementary libraries including jQuery, Backbone.js, and Async.js. You'll learn how to create dynamic web pages and highly concurrent servers by mastering the art of distributing events to where they need to be handled, rather than nesting callbacks within callbacks within callbacks. Async JavaScript will get you up and running with real web development quickly. By the time you've finished the Promises chapter, you'll be parallelizing Ajax requests or running animations in sequence. By the end of the book, you'll even know how to leverage Web Workers and AMD for JavaScript applications with cutting-edge performance. Most importantly, you'll have the knowledge you need to write async code with confidence. What You Need: Basic knowledge of JavaScript is recommended. If you feel that you're not up to speed, see the "Resources for Learning JavaScript" section in the preface.




CORS Essentials


Book Description

Share code and assets across domains in Web applications with CORS About This Book A step-by-step guide but at a high level/fast pace. Not all steps are covered as a basic knowledge is assumed Provides a basic overview of the concepts but the focus is on providing the practical skills required to develop applications Focuses on providing practical examples Who This Book Is For Web developers have been limited by the Same Origin Policy and often wish they could spread their application across different domains. You know JavaScript and AJAX, and have run up against the Same Domain Policy, which is limiting your applications. What You Will Learn Why you need CORS: Bending the Same Origin Policy and basic CORS implementation, headers and XMLHttpRequest Creating proxies for CORS: Sometimes the header is not enough Security: vulnerabilities and how to secure your CORS application CORS implementations in Content Management systems Learn about CORS in Windows applications Take CORS on the Cloud Apply CORS in Node.js Best practices for CORS In Detail This book explains how to use CORS, including specific implementations for platforms such as Drupal, WordPress, IIS Server, ASP.NET, JBoss, Windows Azure, and Salesforce, as well as how to use CORS in the Cloud on Amazon AWS, YouTube, Mulesoft, and others. It examines limitations, security risks, and alternatives to CORS. It explores the W3C Specification and major developer documentation sources about CORS. It attempts to predict what kinds of extension to the CORS specification, or completely new techniques, will come in the future to address the limitations of CORS Web developers will learn how to share code and assets across domains with CORS. They will learn a variety of techniques that are rather similar in their method and syntax. The book is organized by similar types of framework and application, so it can be used as a reference. Developers will learn about special cases, such as when a proxy is necessary. And they will learn about some alternative techniques that achieve similar goals, and when they may be preferable to using CORS Style and approach A step-by-step guide filled with real-world applications




Rapid Prototyping with JS


Book Description

Start learning Backbone.js, Node.js and MongoDB. Rapid Prototyping with JS: Agile JavaScript Development is a hands-on book which introduces you to agile JavaScript web and mobile software development using the latest cutting-edge front-end and back-end technologies including: Node.js MongoDB Backbone.js Parse.com Heroku Windows Azure Practical examples include building multiple versions of the Chat app: jQuery + Parse.com JS REST API Backbone and Parse.com JS SDK Backbone and Node.js Backbone and Node.js + MongoDB The Chat application has all the foundation of a typical web/mobile application: fetching data, displaying it, submitting new data. Other examples include: jQuery + Twitter RESP API "Tweet Analyzer" Parse.com "Save John" Node.js "Hello World" MongoDB "Print Collections" Derby + Express "Hello World" Backbone.js "Hello World" Backbone.js "Apple Database" Monk + Expres.js "REST API Server" This book will save you many hours by providing the hand-picked and tested colletion of quick start guides. RPJS has practical examples that allow to spend less time learning and more time building your own applications. Prototype fast and ship code that matters! More info at http: //rpjs.co




Lightweight Django


Book Description

How can you take advantage of the Django framework to integrate complex client-side interactions and real-time features into your web applications? Through a series of rapid application development projects, this hands-on book shows experienced Django developers how to include REST APIs, WebSockets, and client-side MVC frameworks such as Backbone.js into new or existing projects. Learn how to make the most of Django’s decoupled design by choosing the components you need to build the lightweight applications you want. Once you finish this book, you’ll know how to build single-page applications that respond to interactions in real time. If you’re familiar with Python and JavaScript, you’re good to go. Learn a lightweight approach for starting a new Django project Break reusable applications into smaller services that communicate with one another Create a static, rapid prototyping site as a scaffold for websites and applications Build a REST API with django-rest-framework Learn how to use Django with the Backbone.js MVC framework Create a single-page web application on top of your REST API Integrate real-time features with WebSockets and the Tornado networking library Use the book’s code-driven examples in your own projects




Programming in CoffeeScript


Book Description

Use CoffeeScript to Write Better JavaScript Code Than Ever Before! If you can do it in JavaScript, you can do it better in CoffeeScript. And, since CoffeeScript "compiles down" to JavaScript, your code will fit neatly into virtually any web environment. In Programming in CoffeeScript, Mark Bates shows web developers why CoffeeScript is so useful and how it avoids the problems that often make JavaScript code buggy and unmanageable. He guides you through every feature and technique you need to write quality CoffeeScript code and shows how to take advantage of CoffeeScript's increasingly robust toolset. Bates begins with the absolute basics of running and compiling CoffeeScript and then introduces syntax, control structures, functions, collections, and classes. Through same page code comparisons, you'll discover exactly how CoffeeScript improves on JavaScript. Next, you'll put it to work in building applications that are powerful, flexible, maintainable, concise, reliable, and secure. Bates shares valuable tips for better development, illuminating CoffeeScript's hidden gems and warning you about its remaining "rough edges." The book concludes with a start-to-finish application case study showing how to code back-ends and front-ends and integrate powerful frameworks and libraries. Coverage includes Understanding the right ways to compile and execute CoffeeScript Using CoffeeScript's clean syntax to focus on your code, not JavaScript's distractions Working with CoffeeScript's control structures, functions, and arguments Taking full advantage of CoffeeScript's implementation of collections and iterators Leveraging CoffeeScript's full class support to create complex data models Automating common application development tasks with Cake and Cakefiles Configuring Jasmine with CoffeeScript support, and using it to systematically test your code Writing Node.js server-side applications in CoffeeScript Using CoffeeScript to write jQuery and Backbone.js applications Integrating framework code to avoid "reinventing the wheel" Want a better way to create the JavaScript code your web applications need? CoffeeScript is the solution-and this book will help you master it!