This is a solution to the Results summary component challenge on Frontend Mentor. Frontend Mentor challenges help you improve your coding skills by building realistic projects.
- Solution URL: Github url
 - Live Site URL: live link
 
Users should be able to:
- View the optimal layout for the interface depending on their device's screen size
 - See hover and focus states for all interactive elements on the page
 - See animation of element
 
- Clone the repository:
 
git clone https://github.com/ankan-782/results-summary-component-with-animation.git- Navigate to the project directory:
 
cd results-summary-component-with-animation- Install dependencies:
 
npm install- run the project:
 
npm run dev- Semantic HTML5 markup
 - Vanilla JS for interacting
 - Vanilla CSS for styling
 - CSS custom properties
 - Flex-box
 - CSS Grid
 - Animation
 - Mobile-first workflow
 
- 
Here I first time tried something interesting card sliding transition effect with translate property. Please look at the live site.
 - 
And I also learned "another way" of how to include dynamic html element with the help of
<template>html element. What To include dynamically with js, simply has to put inside it in the<template></template>markup. The<template></template>markup doesn't show on the browser. 
example:
<template data-summary-item-template>
    <div class="summary-item">
        <div class="flex-group">
            <img class="summary-item-picture" src="" alt="picture of topic">
            <h3 class="summary-item-title"></h3>
        </div>
        <p class="summary-item-score">
            <span></span> / 100
        </p>
    </div>
</template>and js part example:
// ...... more code .........
// fetch to retrieve data
data.forEach(element => {
    // cloning content from template
    const summaryItem = summaryItemTemplateEl.content.cloneNode(true).children[0];
    // selecting summary item's elements
    const summaryItemPictureEl = summaryItem.querySelector(".summary-item-picture");
    // ...... more code .........
    // adding things in summary item's elements
    summaryItemPictureEl.src = element.icon;
    // ...... more code .........
    // adding every summary item in the container
    summaryItemsContainerEl.append(summaryItem);
    // ...... more code .........
})I want to brush up little more to animations. That would be the focusing area for my future projects. I am not completely comfortable with it.
- Website - Avijit Roy
 - Frontend Mentor - @ankan-782
 - Twitter - @AvijitAnkan
 



