rust-cssparser VS MSEdgeExplainers

Compare rust-cssparser vs MSEdgeExplainers and see what are their differences.

MSEdgeExplainers

Home for explainer documents originated by the Microsoft Edge team (by MicrosoftEdge)
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
rust-cssparser MSEdgeExplainers
5 18
682 1,249
1.2% 0.6%
7.2 8.1
9 days ago 6 days ago
Rust HTML
Mozilla Public License 2.0 Creative Commons Attribution 4.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

rust-cssparser

Posts with mentions or reviews of rust-cssparser. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-03.
  • Looking for this. html + css rendering through wgpu.
    14 projects | /r/rust | 3 Jul 2023
    If you were to implement this yourself, i'd look into either swash or cosmic-text for the text rendering stack (this is one of the things you really don't want to write from the ground up). For accessibility, AccessKit has quickly become the standard for communicating with crossplatform accessibility APIs in rust GUI. lightningcss (or its lower level counterpart cssparser) are both decent options for CSS parsing. Taffy handles some of what browsers offer for a layout engine, but is still being worked on.
  • We're building a browser when it's supposed to be impossible
    13 projects | news.ycombinator.com | 11 Apr 2023
    Libraries for a lot of this stuff exist (albeit in many cases not very mature yet):

    - https://github.com/pop-os/cosmic-text does text layout (which Taffy explicitly considers out of scope)

    - https://github.com/AccessKit/accesskit does accessibility

    - https://github.com/servo/rust-cssparser does value-agnostic CSS parsing (it will parse the general syntax but leaves value parsing up to the user, meaning you can easily add support for whatever properties you what). Libraries like https://github.com/parcel-bundler/lightningcss implement parsing for the standard css properties.

    - There are crates like https://github.com/BurntSushi/bstr and https://docs.rs/wtf8/latest/wtf8/ for working with non-unicode text

    We are planning to add a C API to Taffy, but tbh I feel like C is not very good for this kind of modularised approach. You really want to be able to expose complex APIs with enforced type safety and this isn't possible with C.

  • Parcel CSS: A new CSS parser, compiler, and minifier
    12 projects | news.ycombinator.com | 12 Jan 2022
  • Can't handle cssparser's ParseError
    1 project | /r/learnrust | 7 Jul 2021

MSEdgeExplainers

Posts with mentions or reviews of MSEdgeExplainers. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-03-01.
  • Microsoft Edge Side Panel API
    1 project | news.ycombinator.com | 27 May 2023
  • Tether elements to each other with CSS anchor positioning
    4 projects | news.ycombinator.com | 1 Mar 2023
    The spec is a W3C CSS working group draft: https://drafts.csswg.org/css-anchor-position-1/

    It looks like less of a Chrome thing and more of an Edge thing? The Intent to Prototype [1] links to an Edge explainer [2] with Microsoft authors. It doesn't look like anyone has asked Mozilla for a position yet [3] but I expect if they get positive signals from web developers (us!) that will be soon.

    [1] https://groups.google.com/a/chromium.org/g/blink-dev/c/vsPdd...

    [2] https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/...

    [3] https://github.com/mozilla/standards-positions/issues?q=anch...

  • Make your design compatible with foldable device
    1 project | dev.to | 16 Feb 2023
    1 project | dev.to | 12 Feb 2023
  • HTML document subtitles?
    1 project | dev.to | 10 Nov 2022
    Read the explainer here
  • More than “Just a web app”
    1 project | /r/PWA | 18 May 2022
  • What's New In Microsoft Edge Devtools?
    1 project | dev.to | 25 Jan 2022
    You can learn more about Focus Mode in this Edge explainer document.
  • Parcel CSS: A new CSS parser, compiler, and minifier
    12 projects | news.ycombinator.com | 12 Jan 2022
    For a spec about a browser feature, "getting it" can mean a few different things.

    1. Understanding the purpose of the feature ("why/when would I use this?")

    2. Understanding how to implement the feature

    3. Understanding how to use the feature

    4. Understanding the feature's "corner cases" (surprising implications, cases where it doesn't do what you'd expect, etc.)

    5. Understanding why the feature works the way it does (instead of some other way)

    Most of the web specs really only explain how to implement a feature, and even then, they're not great at that, because they do such a poor job at explaining the purpose of the feature.

    Assuming that you, like most of us, aren't working on implementing a browser, that means that web specs are mostly unhelpful to you. It's almost completely beyond the purpose of a spec to teach you how to use a feature, what its corner cases would be (which are often unknown at the time a spec was written), and why the specification says what it says.

    This is an area where the web spec community has made some improvements in recent years. Nowadays, it's understood that new proposed specifications shouldn't just provide a specification, but also a separate "explainer" document, whose purpose is to communicate #1 (the purpose of the feature), and also persuade the other browser vendors to implement the feature. ("This will be really cool, and here's why…")

    At a minimum, specs nowadays often include a non-normative "Motivation" section, as the CSS Nesting spec does. https://www.w3.org/TR/css-nesting-1/ I you'll find that you can "get" that spec much better than you can the CSS OM spec https://www.w3.org/TR/cssom-1/ which is old enough to buy alcohol and doesn't include a "Motivation" section.

    You can often find explainer docs linked off of https://chromestatus.com/ e.g. https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/... I think you'll find that explainers are 10000% better for learning features than specs are. (They typically even discuss #3, #4, and #5, as they typically discuss alternative rejected approaches.)

  • Introducing transparent ads in Microsoft Edge Preview
    1 project | /r/MicrosoftEdge | 13 Dec 2021
    Transparent ads are enabled through ad providers joining the Transparent Ads Provider program. More info on the program and the requirements for providers here - https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/TransparentAds/Program-Overview.md
  • The strangely difficult problem of drawing a box around text
    2 projects | news.ycombinator.com | 25 Oct 2021
    Not necessarily for a Swift project, but your experience makes me wonder about the current web API for highlighting spans of text.

    https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/...

    Complicated...

What are some alternatives?

When comparing rust-cssparser and MSEdgeExplainers you can also consider the following projects:

lightningcss - An extremely fast CSS parser, transformer, bundler, and minifier written in Rust.

dropcss - An exceptionally fast, thorough and tiny unused-CSS cleaner

swc - Rust-based platform for the Web

ngx-foldable - Angular library to help your build dual-screen experiences for foldable or dual-screen devices

cosmic-text - Pure Rust multi-line text handling

react-foldable - A set of components to help you work with foldable screens

css-modules - Documentation about css-modules

Tailwind CSS - A utility-first CSS framework for rapid UI development.

icss - Interoperable CSS — a standard for loadable, linkable CSS

surface-duo-photo-gallery - This repo is an Angular re-implementation of the Surface Duo Photo Gallery sample

hound - Lightning fast code searching made easy