Elm Web Development

Explore why ELM is a great alternative to using pure JavaScript and other JS-based solutions by building complete apps and websites.
Preview in Mapt

Elm Web Development

Ajdin Imsirovic
New Release!

Explore why ELM is a great alternative to using pure JavaScript and other JS-based solutions by building complete apps and websites.
Mapt Subscription
FREE
$29.99/m after trial
eBook
$22.40
RRP $31.99
Save 29%
Print + eBook
$39.99
RRP $39.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$22.40
$39.99
$29.99 p/m after trial
RRP $31.99
RRP $39.99
Subscription
eBook
Print + eBook
Start 14 Day Trial

Frequently bought together


Elm Web Development Book Cover
Elm Web Development
$ 31.99
$ 22.40
Hands-On Web Development with Vue.js [Video] Book Cover
Hands-On Web Development with Vue.js [Video]
$ 124.99
$ 106.25
Buy 2 for $35.00
Save $121.98
Add to Cart

Book Details

ISBN 139781788299053
Paperback288 pages

Book Description

Web development with JavaScript usually involves dealing with performance and maintenance issues. JavaScript fatigue makes it difficult for many developers to keep up with the increasing complexity posed by the multitude of JavaScript frameworks with changing versions, and the need to use different tools such as task runners, module bundlers, compilers, testing suites, linting and debuggers. Elm is an easy-to-learn, functional programming language that simplifies web development by eliminating the complexity associated with using JavaScript for web development. Elm is a statically typed language and thus makes a front end web developer's life easier by preventing run-time errors.

You will begin by seeing the bigger picture of where Elm fits into the web development world and learning the basics of Elm programming. Firstly, you will get a taste for web development with Elm by developing a simple fizz-buzz app. Next you will get hands-on with advanced Elm concepts as you develop your own personal blogging website, a unit conversion app and a weather app with Elm. Finally, you will also learn how to integrate Elm with a Rails 5 app with the help of Webpack. By the end of the book you will have learned Elm programming, and its applications, and will appreciate how Elm simplifies web development for you.

Table of Contents

Chapter 1: Why is This a Great Time to Learn Elm?
What is Elm?
Summary
Chapter 2: Building Your First Elm App
Let's build an app
Values, expressions, data structures, and types in Elm
Building a simple FizzBuzz app in Elm
Summary
Chapter 3: Creating Your Personal Portfolio with Elm
Creating our portfolio with elm-make-app
Building a static single-page portfolio
Improving our messages
Adding the type alias of Model
Working with List.map and List.filter
Revisiting the FizzBuzz app
Summary
Chapter 4: Preparing a Unit Conversion Website in Elm
What are we going to build?
Building our Unit Conversion app
Revisiting the FizzBuzz app
Summary
Chapter 5: Completing the Unit Conversion Website in Elm
Improving the Unit Converter app
Adding type alias Model, initModel, and Main
A Bootstrap-based HTML layout for our app
Converting an HTML layout into an Elm view
Adding the improved view to our functioning app
Summary
Chapter 6: Exploring Elm in Greater Detail
Destructuring values in Elm
Dealing with randomness in Elm
Understanding partial application
Summary
Chapter 7: Making a Weather App in Elm
Obtaining the weather data from a third-party API
What are we going to build?
Building our weather app
Installing the HTTP package
Adding all the imports
Conceptualizing the model
Setting up Msg union type
Updating the update function
Updating the view
Summary
Chapter 8: Adding More Features to the Weather App
Importing Material and Round modules
Adding elm-mdl to our Model
Updating the init function
Updating the Msg union type and the update function
Updating the view function
Adding color schemes
Updating decodeTemperatureInfo
Summary
Chapter 9: Testing in Elm
Introduction to Elm testing
Writing unit tests in Elm
Writing fuzz tests in Elm
Summary
Chapter 10: Integrating Elm with Rails
Setting up a basic Rails 5.1.5 app using Codeanywhere
Installing Ruby 2.5.0 and Rails 5.1.5 on Codeanywhere
Creating a brand new Rails project
Integrating Elm with Rails 5.1.5
Adding our Elm weather app to our Rails app
Summary

What You Will Learn

  • Programming with the Elm language, its syntax and core concepts
  • Using Elm for front end web development projects
  • Developing complete websites with Elm
  • Decoding JSON into Elm
  • Integrating Elm with the standard front end web development technologies
  • Integrating Elm with back-end frameworks
  • Testing your applications in Elm

Authors

Table of Contents

Chapter 1: Why is This a Great Time to Learn Elm?
What is Elm?
Summary
Chapter 2: Building Your First Elm App
Let's build an app
Values, expressions, data structures, and types in Elm
Building a simple FizzBuzz app in Elm
Summary
Chapter 3: Creating Your Personal Portfolio with Elm
Creating our portfolio with elm-make-app
Building a static single-page portfolio
Improving our messages
Adding the type alias of Model
Working with List.map and List.filter
Revisiting the FizzBuzz app
Summary
Chapter 4: Preparing a Unit Conversion Website in Elm
What are we going to build?
Building our Unit Conversion app
Revisiting the FizzBuzz app
Summary
Chapter 5: Completing the Unit Conversion Website in Elm
Improving the Unit Converter app
Adding type alias Model, initModel, and Main
A Bootstrap-based HTML layout for our app
Converting an HTML layout into an Elm view
Adding the improved view to our functioning app
Summary
Chapter 6: Exploring Elm in Greater Detail
Destructuring values in Elm
Dealing with randomness in Elm
Understanding partial application
Summary
Chapter 7: Making a Weather App in Elm
Obtaining the weather data from a third-party API
What are we going to build?
Building our weather app
Installing the HTTP package
Adding all the imports
Conceptualizing the model
Setting up Msg union type
Updating the update function
Updating the view
Summary
Chapter 8: Adding More Features to the Weather App
Importing Material and Round modules
Adding elm-mdl to our Model
Updating the init function
Updating the Msg union type and the update function
Updating the view function
Adding color schemes
Updating decodeTemperatureInfo
Summary
Chapter 9: Testing in Elm
Introduction to Elm testing
Writing unit tests in Elm
Writing fuzz tests in Elm
Summary
Chapter 10: Integrating Elm with Rails
Setting up a basic Rails 5.1.5 app using Codeanywhere
Installing Ruby 2.5.0 and Rails 5.1.5 on Codeanywhere
Creating a brand new Rails project
Integrating Elm with Rails 5.1.5
Adding our Elm weather app to our Rails app
Summary

Book Details

ISBN 139781788299053
Paperback288 pages
Read More

Read More Reviews

Recommended for You

Hands-On Web Development with Vue.js [Video] Book Cover
Hands-On Web Development with Vue.js [Video]
$ 124.99
$ 106.25
Full-Stack Web Development with Vue.js and Node Book Cover
Full-Stack Web Development with Vue.js and Node
$ 35.99
$ 25.20
Web Development with Elm [Video] Book Cover
Web Development with Elm [Video]
$ 124.99
$ 106.25
Phoenix Web Development Book Cover
Phoenix Web Development
$ 31.99
$ 22.40
Selenium WebDriver With Java - Novice To Ninja plus Interview [Video] Book Cover
Selenium WebDriver With Java - Novice To Ninja plus Interview [Video]
$ 201.99
$ 171.70
Azure Platform as a Service – Web and API Application Deployment [Video] Book Cover
Azure Platform as a Service – Web and API Application Deployment [Video]
$ 124.99
$ 106.25