html-parser-rs 0.1.0

A Rust crate for parsing HTML documents. It supports reading HTML documents in an event-based fashion.
Documentation
# Html Parser Rs


![Rust](https://img.shields.io/badge/language-Rust-orange.svg)
![License](https://img.shields.io/badge/license-MIT-blue.svg)

`html-parser-rs` is a Rust crate for parsing HTML documents. It supports reading HTML documents in an event-based fashion. This allows you to receive events for different elements, attributes, and text content during the parsing process.

## Features


- **Event-Based Parsing:** Receive events for different elements, attributes, and text content during parsing.

## Usage


Add this crate to your `Cargo.toml` file:

```toml
[dependencies]
html-parser-rs = "0.1.0"
```


```rs
use html_parser_rs::Lexer;
use std::fs;

fn main() {
    let contents = fs::read_to_string("./examples/index.html")
        .expect("Failed to read file.");

    let mut lexer = Lexer::new(contents);

    for token in lexer.parse() {
        println!("{token:?}");
    }
}
```

## Events


- `StartElement(TAG_NAME)`: Triggered when an HTML element starts.

- `EndElement(TAG_NAME)`: Triggered when an HTML element ends.

- `TextContent(TEXT)`: Triggered when text content is encountered.

- `Attribute(NAME, VALUE)`: Triggered when an attribute is encountered.

## Contributing


Contributions are welcome! I would like you to contribute in this project.

## Roadmap


This project is in its early stages, and there are many missing features that need implementation. Check the [Issues](/issues) section for a list of features, enhancements, and bug fixes that are planned.

## License


This project is licensed under the MIT License - see the [LICENSE](/LICENSE.md) file for details.