Web Fundamentals: Web Components Part 2

This page summarizes the projects mentioned and recommended in the original post on dev.to

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • web-fundamentals

    This repo contains the source code for the blog post series on web fundamentals.

  • This is what the final HTML looks like with the logic that updates the timer, which you'd also be able to find on my GitHub.

  • browser-window

    Used in demos as a way to fake a Safari-esque web browser window.

  • This covers all but one of the lifecycle methods that you get access to with custom elements, and in actuality, these are what you'd use most of the time. The last one is adoptedCallback and you'd most likely encounter it in the context of elements [4]. Even though I don't have plans to go through it in the series, the concepts and the way we've covered them so far should give you a good idea on how to begin unpicking it if you do. Other than that, we have enough under our belt to delve even deeper into what web components have to offer.

    All of this might feel like a lot of work to put some HTML on the screen and update a few attributes, and it is. Even though we've achieved fine-grained updates in our component, it took a fair bit of reasoning about the lifecycle methods to get there. The reason the custom elements API feels a little cumbersome is because it's low level by design to give you the most control. This means that you can do anything with it, including build your own abstractions on top of it.

    There are other component-based abstractions that will give you the same effect with a lot less work, and some even give you the same level of fine-grained control. Though we'll look at a few UI frameworks alongside web components, the ultimate aim of this series is to demonstrate what the web platform is capable of, and get you to start thinking about the different tradeoffs you make when picking different tools. My hypothesis is that by understanding what the platform has to offer, you'll be in a much better position to evaluate the complexity you choose to take on when building experiences. Lastly, I'll leave you with a little spoiler of what's to come: web components are cool and they are here to stay.

    If you think of anything I've missed or just wanted to get in touch, you can reach me through a comment, via Mastodon, via Threads, via Twitter or through LinkedIn.

    References

    1. Zach Leatherman's component [GitHub]
    2. MDN Web Components [Website]
    3. Component Lifecycle Reference Diagram [Website]
    4. Component Lifecycle Reference [Website]

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Cloudflare Challenge

    3 projects | dev.to | 14 Apr 2024
  • Don't Fear the Rebase 🐮🔔

    1 project | dev.to | 29 Mar 2024
  • How to Integrate Astro with ApostropheCMS pt. 2

    2 projects | dev.to | 21 Mar 2024
  • Privacy-respecting software alternatives, compared and analyzed

    1 project | news.ycombinator.com | 9 Mar 2024
  • Show HN: US flag made with Tailwind CSS

    1 project | news.ycombinator.com | 1 Mar 2024