Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Hands-On Full Stack Web Development with Aurelia
Hands-On Full Stack Web Development with Aurelia

Hands-On Full Stack Web Development with Aurelia: Develop modern and real-time web applications with Aurelia and Node.js

Arrow left icon
Profile Icon Erikson Murrugarra Murrugarra Sifuentes Profile Icon Diego Argüelles Rojas
Arrow right icon
€32.99
Full star icon Full star icon Full star icon Full star icon Full star icon 5 (1 Ratings)
Paperback Jun 2018 348 pages 1st Edition
eBook
€17.99 €26.99
Paperback
€32.99
Subscription
Free Trial
Renews at €18.99p/m
Arrow left icon
Profile Icon Erikson Murrugarra Murrugarra Sifuentes Profile Icon Diego Argüelles Rojas
Arrow right icon
€32.99
Full star icon Full star icon Full star icon Full star icon Full star icon 5 (1 Ratings)
Paperback Jun 2018 348 pages 1st Edition
eBook
€17.99 €26.99
Paperback
€32.99
Subscription
Free Trial
Renews at €18.99p/m
eBook
€17.99 €26.99
Paperback
€32.99
Subscription
Free Trial
Renews at €18.99p/m

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Table of content icon View table of contents Preview book icon Preview Book

Hands-On Full Stack Web Development with Aurelia

Styling the User Interface

We now have our running Aurelia application and know all the basic principles of JavaScript programming. Our Hello World! message appears on screen, but don't you think it is a little simple and static? In this chapter, we will explore how to add style to our application using modern tools such as SASS and LESS. Also, we will talk about the most important styling libraries used nowadays such as Bootstrap, Semantic UI, and Material Design. Finally, with all this previous learning, let's make our application look cool, awesome, and attractive by configuring our project to use the Aurelia-Materialize plugin. Some of the tools we are going to use for this purpose are:

  • CSS preprocessors: SASS, LESS
  • Task automation tools: Gulp
  • CSS libraries: Bootstrap, Material Design, Semantic UI

Sounds exciting? We know yes, first we need to start talking about...

Talking about CSS

Basically, CSS is a language structure that describes the style of some HTML file (can also be used for XML), defining how it should be displayed. This structure allows developers to manage the behavior on one or multiple web pages; any change performed on some CSS element will be reflected in all HTML elements linked to it.

How does it work?

CSS is based on rules. These rules are defined on .css files, called style sheet. Style sheets can be composed of one or more rules, applied to one HTML or XML document; the rule has two parts: selector and declaration:

h4 { color : red}

The h4 element is the selector, and { color : red } is the declaration.

The selector works as a link between the document and the...

Exploring SASS and LESS

We were reviewing some of the most basic CSS concepts, just to refresh our knowledge about the syntax and elements that compose a style sheet. In the real world, a style sheet could have more than 20 classes belonging to one HTML page; in extreme cases, these classes could be one hundred or more. In these cases, maybe you will find CSS syntax very primitive, not auto-explanatory, and incomplete in some cases. It's hard to implement inheritance on big systems and over time, it could become hard to maintain.
You can apply different approaches in order to write better CSS code, you can define different classes for each web page and then import them on one single CSS file, or maybe you could define parent classes and apply inheritance to child elements, but, in both cases, you will need to deal with maintainability problems.

It's just for the reason...

Automating tasks with Gulp

In the previous section, we learned how to use a CSS preprocessor and how to compile this SASS/LESS code into pure CSS to be interpreted by the browser. Note that each time you make a change, you will need to recompile the entire file, which means that you will need to type the same command and do the same task one, two, and several times. Yes, it's really boring. Fortunately, we have task automation tools. What does that mean? Some other tool will do the dirty job for us.

Understanding Gulp

Gulp is an open source JavaScript-based task runner, which uses code-over-configuration approach to define its tasks. These could be the following:

  • Bundling and minifying libraries and style sheets
  • Refreshing...

Exploring CSS frameworks

We are ready to start writing our first HTML elements and add style to the application. There are common elements that can be repeated in more than one application: tables, grids, input tags, select, and so on. We can define our own, but you should keep in mind that all of these elements need to be standardized, and defining it from zero can become a difficult task. Today, we have many HTML libraries and templates to start developing our view layer and add custom behavior to satisfy our own needs. Let's explore the three most used HTML, JS, and CSS libraries.

Bootstrap

Bootstrap is one of the most popular and complete frontend libraries. It is composed of HTML templates, predefined CSS classes...

Configuring our project with Aurelia-Materialize

As we said in the last section, Material Design is not a library. However, many libraries are based on Material philosophy, so we will choose Materialize CSS. Their components look very natural, and the best part is that Aurelia has its own implementation of this library called Aurelia-Materialize, which will facilitate us a lot in the development process and integration.

Let's open our created FIFA World Cup application and set the Terminal into the root folder; then we need to install some dependencies. Execute the following commands in the next order:

  • $ au install jquery
  • $ au install tslib
  • $ au install materialize-amd
  • $ au install aurelia-materialize-bridge

In our index.html file, lets include the Material Design icons to be imported into our project:

<link href="https://fonts.googleapis.com/icon?family=Material...

Summary

In this chapter, we learned how to style our Aurelia application using CSS. Also, we explored the two most popular CSS preprocessors—LESS and SASS. We saw how these preprocessors help us develop more powerful style sheets using variables and extensions.

We explored how to automate tasks using Gulp. Gulp is used by the Aurelia CLI to execute all the tasks related to it.

Lastly, we went through different CSS Frameworks and explored and configured Google's Material Design Framework. We used Material Design to create our example application and take advantage of the most common UI elements.

In the next chapter, we will see how to apply testing in our code by adopting Test-Driven-Development in our development process. Keep reading!

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • • Learn the advanced features of Aurelia to build responsive web applications
  • • Write clean, modular, and testable code that will be easy to maintain and evolve
  • • Harness the power of JavaScript on the client and server side to build full-stack applications

Description

Hands-On Full Stack Web Development with Aurelia begins with a review of basic JavaScript concepts and the structure of an Aurelia application generated with the Aurelia-CLI tool. You will learn how to create interesting and intuitive application using the Aurelia-Materialize plugin, which implements the material design approach. Once you fully configure a FIFA World Cup 2018 app, you'll start creating the initial components through TDD practices and then develop backend services to process and store all the user data. This book lets you explore the NoSQL model and implement it using one of the most popular NoSQL databases, MongoDB, with some exciting libraries to make the experience effortless. You'll also be able to add some advanced behavior to your components, from managing the lifecycle properly to using dynamic binding, field validations, and the custom service layer. You will integrate your application with Google OAuth Service and learn best practices to secure your applications. Furthermore, you'll write UI Testing scripts to create high-quality Aurelia Apps and explore the most used tools to run end-to-end tests. In the concluding chapters, you'll be able to deploy your application to the Cloud and Docker containers. By the end of this book, you will have learned how to create rich applications using best practices and modern approaches.

Who is this book for?

Hands-On Full Stack Web Development with Aurelia is for you if you are a web or full-stack JavaScript developer who has experience with traditional stacks such as LAMP, MEAN, or MERN and wish to explore the power of Aurelia and new stack with modern web technologies.

What you will learn

  • • Employ best practices and modern approaches to create frontend applications
  • • Learn about modern CSS preprocessors and improve the readability of your application
  • • Use the Aurelia framework to create navigable web applications
  • • Write your own tests, making your application secure and fault-tolerant
  • • Create solid RESTful APIs using the microservice architecture
  • • Understand the NoSQL paradigm and get the best performance from your database
  • • Integrate third-party libraries such as Gmail for Single Sign On
  • • Write UI testing scripts and integration tests to build extensible apps
Estimated delivery fee Deliver to Finland

Premium delivery 7 - 10 business days

€17.95
(Includes tracking information)

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Jun 15, 2018
Length: 348 pages
Edition : 1st
Language : English
ISBN-13 : 9781788833202
Languages :
Tools :

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Estimated delivery fee Deliver to Finland

Premium delivery 7 - 10 business days

€17.95
(Includes tracking information)

Product Details

Publication date : Jun 15, 2018
Length: 348 pages
Edition : 1st
Language : English
ISBN-13 : 9781788833202
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
€18.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
€189.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts
€264.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just €5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total 106.97
Hands-On Full Stack Web Development with Angular 6 and Laravel 5
€36.99
Hands-On Full Stack Development with Spring Boot 2.0  and React
€36.99
Hands-On Full Stack Web Development with Aurelia
€32.99
Total 106.97 Stars icon
Banner background image

Table of Contents

11 Chapters
Introducing Aurelia Chevron down icon Chevron up icon
Styling the User Interface Chevron down icon Chevron up icon
Testing and Debugging Chevron down icon Chevron up icon
Creating Components and Templates Chevron down icon Chevron up icon
Creating Our RESTful API Chevron down icon Chevron up icon
Storing Our Data in MongoDB Chevron down icon Chevron up icon
Advanced Features on Aurelia Chevron down icon Chevron up icon
Security Chevron down icon Chevron up icon
Running E2E Tests Chevron down icon Chevron up icon
Deployment Chevron down icon Chevron up icon
Other Books You May Enjoy Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Full star icon Full star icon 5
(1 Ratings)
5 star 100%
4 star 0%
3 star 0%
2 star 0%
1 star 0%
carlos siches Jun 20, 2018
Full star icon Full star icon Full star icon Full star icon Full star icon 5
Excellent book!! I had the chance to review it and It help me to increase my efficient using this framework.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is the delivery time and cost of print book? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
What is custom duty/charge? Chevron down icon Chevron up icon

Customs duty are charges levied on goods when they cross international borders. It is a tax that is imposed on imported goods. These duties are charged by special authorities and bodies created by local governments and are meant to protect local industries, economies, and businesses.

Do I have to pay customs charges for the print book order? Chevron down icon Chevron up icon

The orders shipped to the countries that are listed under EU27 will not bear custom charges. They are paid by Packt as part of the order.

List of EU27 countries: www.gov.uk/eu-eea:

A custom duty or localized taxes may be applicable on the shipment and would be charged by the recipient country outside of the EU27 which should be paid by the customer and these duties are not included in the shipping charges been charged on the order.

How do I know my custom duty charges? Chevron down icon Chevron up icon

The amount of duty payable varies greatly depending on the imported goods, the country of origin and several other factors like the total invoice amount or dimensions like weight, and other such criteria applicable in your country.

For example:

  • If you live in Mexico, and the declared value of your ordered items is over $ 50, for you to receive a package, you will have to pay additional import tax of 19% which will be $ 9.50 to the courier service.
  • Whereas if you live in Turkey, and the declared value of your ordered items is over € 22, for you to receive a package, you will have to pay additional import tax of 18% which will be € 3.96 to the courier service.
How can I cancel my order? Chevron down icon Chevron up icon

Cancellation Policy for Published Printed Books:

You can cancel any order within 1 hour of placing the order. Simply contact [email protected] with your order details or payment transaction id. If your order has already started the shipment process, we will do our best to stop it. However, if it is already on the way to you then when you receive it, you can contact us at [email protected] using the returns and refund process.

Please understand that Packt Publishing cannot provide refunds or cancel any order except for the cases described in our Return Policy (i.e. Packt Publishing agrees to replace your printed book because it arrives damaged or material defect in book), Packt Publishing will not accept returns.

What is your returns and refunds policy? Chevron down icon Chevron up icon

Return Policy:

We want you to be happy with your purchase from Packtpub.com. We will not hassle you with returning print books to us. If the print book you receive from us is incorrect, damaged, doesn't work or is unacceptably late, please contact Customer Relations Team on [email protected] with the order number and issue details as explained below:

  1. If you ordered (eBook, Video or Print Book) incorrectly or accidentally, please contact Customer Relations Team on [email protected] within one hour of placing the order and we will replace/refund you the item cost.
  2. Sadly, if your eBook or Video file is faulty or a fault occurs during the eBook or Video being made available to you, i.e. during download then you should contact Customer Relations Team within 14 days of purchase on [email protected] who will be able to resolve this issue for you.
  3. You will have a choice of replacement or refund of the problem items.(damaged, defective or incorrect)
  4. Once Customer Care Team confirms that you will be refunded, you should receive the refund within 10 to 12 working days.
  5. If you are only requesting a refund of one book from a multiple order, then we will refund you the appropriate single item.
  6. Where the items were shipped under a free shipping offer, there will be no shipping costs to refund.

On the off chance your printed book arrives damaged, with book material defect, contact our Customer Relation Team on [email protected] within 14 days of receipt of the book with appropriate evidence of damage and we will work with you to secure a replacement copy, if necessary. Please note that each printed book you order from us is individually made by Packt's professional book-printing partner which is on a print-on-demand basis.

What tax is charged? Chevron down icon Chevron up icon

Currently, no tax is charged on the purchase of any print book (subject to change based on the laws and regulations). A localized VAT fee is charged only to our European and UK customers on eBooks, Video and subscriptions that they buy. GST is charged to Indian customers for eBooks and video purchases.

What payment methods can I use? Chevron down icon Chevron up icon

You can pay with the following card types:

  1. Visa Debit
  2. Visa Credit
  3. MasterCard
  4. PayPal
What is the delivery time and cost of print books? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela