# README.md · versecafe/webls

[View on GitCafe](https://git.cafe/versecafe/webls/blob/fba0fa96f64c1abc42c8fe8abe34b6dc434ea222/README.md)

Repository: [versecafe/webls](https://git.cafe/versecafe/webls)

Visibility: public

Requested revision: fba0fa96f64c1abc42c8fe8abe34b6dc434ea222

Requested commit: fba0fa96f64c1abc42c8fe8abe34b6dc434ea222

Commit: fba0fa96f64c1abc42c8fe8abe34b6dc434ea222

Blob: a626f2bfaac93cc1f62cf02f316de47b9cc96621

Size: 1383 bytes

[Immutable source](https://git.cafe/versecafe/webls/blob/fba0fa96f64c1abc42c8fe8abe34b6dc434ea222/README.md?format=markdown)

````
# WebLS

A Gleam library for generating sitemaps and RSS feeds and more. to meet all
your common web listing needs.

[![Package Version](https://img.shields.io/hexpm/v/webls)](https://hex.pm/packages/webls)
[![Hex Docs](https://img.shields.io/badge/hex-docs-ffaff3)](https://hexdocs.pm/webls/)

```sh
gleam add webls@1
```

```gleam
import webls/rss.{RssChannel, RssItem}

pub fn generate_rss_feed() -> String {
  let channels = [
    RssChannel(
      title: "Gleam RSS",
      description: "A test RSS feed",
      link: "https://gleam.run",
      items: [
        RssItem(
          title: "Gleam 1.0",
          link: "https://gleam.run/blog/gleam-1.0",
          description: "Gleam 1.0 is here!",
          pub_date: birl.now(),
          author: None,
          guid: #("gleam.run", Some(True)),
        ),
        RssItem(
          title: "Gleam 0.10",
          link: "https://gleam.run/blog/gleam-0.10",
          description: "Gleam 0.10 is here!",
          pub_date: birl.now(),
          author: Some("ve.re.ca@protonmail.com"),
          guid: #("gleam.run", Some(True)),
        ),
      ],
    ),
  ]

  channels
  |> rss.to_string()
}
```

Further documentation can be found at <https://hexdocs.pm/webls>.

## Development

```sh
gleam run   # Run the project
gleam test  # Run the tests
```

> Yes the name is a reference to the `ls` command in unix to list files

````
