Skip to content
  • Unlock Pro
  • Log in with GitHub
Solution
Submitted over 1 year ago

Time Tracking Dashboard with Angular and SCSS

angular, sass/scss, typescript
n3ey•50
@vojtakala-it
A solution to the Time tracking dashboard challenge
View live sitePreview (opens in new tab)View codeCode (opens in new tab)

Solution retrospective


Hey !

My 2nd challenge here.

I decided to take on this challenge with Angular and SCSS.

I thought this challenge will be simple, but Angular (I love Angular) made it into a hell :-D. But that's probably because I still suck at Angular.

There is an interesting way, how I approached handling the svg icons in Angular, and if you're experienced in Angular, please, if you have time, take a look and let me know how to do it correctly or in a better way, I'll appreaciate it very much!

What I had problems with ?

  • Angular's View Encapsulation with SCSS, I had few problems with styling and working on the layout, but mostly because I decided to use the svg icon as components and render them from within a dynamic component. I guess I bumped into some async problems and other issues before I got it work correctly. If you know more how to work with svg Icons, if you know more about Angular, then please take a look at my code -> src/app/components/icons check it out and let me know how to handle it in a better way but still do everything dynamically.

That's what I wanted to do, everything dynamically, so I fetch the svg colors using a service component and then using it as a background color, that was one of the reasons I decided to use svg icons as components.

Other than that, it was probably all cool, though I'm not really happy about my code, because I know that it could be done in a much more efficient and better way, but I lack experience and know how. Working on it though, step by step.

Thank you very much for your time!

Code
Select a file

Please log in to post a comment

Log in with GitHub

Community feedback

  • n3ey•50
    @vojtakala-it
    Posted over 1 year ago

    Oh I forgot to mention, there was a problem with the dynamic font, I imported it correctly, I use @face-font but still I couldn't get all the font weighs, that's why my font is a little bit off, maybe some Angular issue ? On my previous challenge where I used pure JS with webpack everything worked correctly...

Join our Discord community

Join thousands of Frontend Mentor community members taking the challenges, sharing resources, helping each other, and chatting about all things front-end!

Join our Discord
Frontend Mentor logo

Stay up to datewith new challenges, featured solutions, selected articles, and our latest news

Frontend Mentor

  • Unlock Pro
  • Contact us
  • FAQs
  • Become a partner

Explore

  • Learning paths
  • Challenges
  • Solutions
  • Articles

Community

  • Discord
  • Guidelines

For companies

  • Hire developers
  • Train developers
© Frontend Mentor 2019 - 2025
  • Terms
  • Cookie Policy
  • Privacy Policy
  • License

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

How does the accessibility report work?

When a solution is submitted, we use axe-core to run an automated audit of your code.

This picks out common accessibility issues like not using semantic HTML and not having proper heading hierarchies, among others.

This automated audit is fairly surface level, so we encourage to you review the project and code in more detail with accessibility best practices in mind.

How does the CSS report work?

When a solution is submitted, we use stylelint to run an automated check on the CSS code.

We've added some of our own linting rules based on recommended best practices. These rules are prefixed with frontend-mentor/ which you'll see at the top of each issue in the report.

The report will audit all CSS, SCSS and Less files in your repository.

How does the HTML validation report work?

When a solution is submitted, we use html-validate to run an automated check on the HTML code.

The report picks out common HTML issues such as not using headings within section elements and incorrect nesting of elements, among others.

Note that the report can pick up “invalid” attributes, which some frameworks automatically add to the HTML. These attributes are crucial for how the frameworks function, although they’re technically not valid HTML. As such, some projects can show up with many HTML validation errors, which are benign and are a necessary part of the framework.

How does the JavaScript validation report work?

When a solution is submitted, we use eslint to run an automated check on the JavaScript code.

The report picks out common JavaScript issues such as not using semicolons and using var instead of let or const, among others.

The report will audit all JS and JSX files in your repository. We currently do not support Typescript or other frontend frameworks.

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub