An open API service indexing awesome lists of open source software.

https://github.com/wojtekmach/easyhtml

EasyHTML makes it easy to work with HTML in Elixir.
https://github.com/wojtekmach/easyhtml

Last synced: 6 months ago
JSON representation

EasyHTML makes it easy to work with HTML in Elixir.

Awesome Lists containing this project

README

          

# EasyHTML

[![Version](https://img.shields.io/hexpm/v/easyhtml.svg)](https://hex.pm/packages/easyhtml)
[![CI](https://github.com/wojtekmach/easyhtml/actions/workflows/ci.yml/badge.svg)](https://github.com/wojtekmach/easyhtml/actions/workflows/ci.yml)

EasyHTML makes working with HTML easy.

It is a tiny wrapper around [Floki](https://hex.pm/packages/floki) that adds conveniences:

* An `Inspect` implementation to pretty-print them
* An `Access` implementation to search them
* An `Enumerable` implementation to traverse them
* A `String.Chars` implementation to convert them to text

## Usage

```elixir
Mix.install([
{:easyhtml, "~> 0.3.0"}
])

doc = EasyHTML.parse!("

Hello, world!

")
#=> ~HTML[

Hello, world!

]

doc["em"]
#=> ~HTML[world]

to_string(doc)
#=> "Hello, world!"

import EasyHTML, only: :sigils
doc = ~HTML[


  • foo

  • bar

]
Enum.to_list(doc["li"])
#=> [~HTML[
  • foo
  • ], ~HTML[
  • bar
  • ]]
    ```