#css #visit #telecss

tele_visit

A CSS AST visitor for visit the AST produced by tele_parser

2 unstable releases

0.2.0 Mar 26, 2022
0.1.0 Feb 27, 2022

#2 in #visit

31 downloads per month
Used in tele_codegen

MIT license

49KB
1.5K SLoC

Telecss (WIP)

CSS tokenizer, parser, transformer, written in Rust.

This project is mainly based on the following specs:

Benchmark

Benchmarks on each commit: https://telecss.github.io/telecss/dev/bench/

This benchmark is based on parsing/tokenizing the crates/telecss/examples/normalizecss/normalize.css file, and the time-consuming of parsing includes the time-consuming of tokenizing:

  • Pure Parsing Time = Parsing Time - Tokenizing Time

TODO

Current Focus

  • parsing selectors

Schedule

  • Make tokenizer available.
  • Make parser available.
  • Benchmarks & CI (https://github.com/benchmark-action/github-action-benchmark)
  • Make transformer available.
  • Make generator available.
  • Playground (with WASM)
  • Allows writing plugins using Nodejs
  • Generate code frame for diagnostics when errors occur.
  • Docs

lib.rs:

Visitor/Folder pattern for transforming the AST

Dependencies

~0.4–1MB
~24K SLoC