Skip to content

frontendmentor.io project "Calculator App" to build an application to design specifications that performs mathematical operations, and adjusts/saves preferred color theme.

Notifications You must be signed in to change notification settings

davidrhyne/calculator-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Frontend Mentor - Calculator app solution

This is a solution to the Calculator app challenge on Frontend Mentor. Frontend Mentor challenges help you improve your coding skills by building realistic projects.

Table of contents

Overview

The challenge

Users should be able to:

  • See the size of the elements adjust based on their device's screen size
  • Perform mathmatical operations like addition, subtraction, multiplication, and division
  • Adjust the color theme based on their preference
  • Bonus: Have their initial theme preference checked using prefers-color-scheme and have any additional changes saved in the browser

Screenshot

mobile - default theme tablet - light theme desktop - vivid theme

Links

My process

I started by reviewing the design specification. I then started the markup knowing that the mobile and desktop layouts were very similiar and would be managed primarily by CSS grid. Afer the markup, I stated the CSS styling with mobile-first workflow and then created two media queries to handle the transition from the mobile to the desktop layouts. After completing 95% of the styling, I started coding the JavaScript. The process of coding logic, especially the theme switch, lead to several iterations of changing the markup and CSS to match changes introduce with JavaScript.

Built with

  • Mobile-first workflow
  • Semantic HTML5 markup
  • CSS custom properties
  • Flexbox
  • CSS Grid
  • JavaScript

What I learned

This was another excellent exercise in CSS grid and flexbox, so I deepened my knowledge on both of those topics. And this was the first frontend mentor project that included JavaScript, so this a great exercise in functional programming, event listeners, and local storage.

Continued development

While working on this project, I was thinking the next project should include React, so that will be the focus for my next project. Likewise, I am really enjoying the practice that I am getting using CSS grid and flexbox.

Useful resources

Author

About

frontendmentor.io project "Calculator App" to build an application to design specifications that performs mathematical operations, and adjusts/saves preferred color theme.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published