Skip to content
This repository was archived by the owner on Oct 6, 2025. It is now read-only.

cassiascheffer/publicsuffix_gleam

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Important

This package has been renamed to psl. See https://github.com/cassiascheffer/psl

publicsuffix_gleam

Package Version Hex Docs

A Gleam package for parsing domain names into their component parts using the Public Suffix List.

Inspired by publicsuffix-ruby.

Installation

Add publicsuffix_gleam to your Gleam project:

gleam add publicsuffix_gleam

Usage

import publicsuffix_gleam as publicsuffix

pub fn main() {
  // Parse a simple domain
  let assert Ok(parts) = publicsuffix.parse("https://gleam.run")
  // parts.transit_routing_domain -> ""
  // parts.second_level_domain -> "gleam"
  // parts.top_level_domain -> "run"
  // parts.subdomain_parts -> []

  // Parse a domain with a subdomain
  let assert Ok(parts) = publicsuffix.parse("https://packages.gleam.run")
  // parts.transit_routing_domain -> "packages"
  // parts.second_level_domain -> "gleam"
  // parts.top_level_domain -> "run"
  // parts.subdomain_parts -> ["packages"]

  let assert Ok(parts) = publicsuffix.parse("https://fun.packages.gleam.run")
  // parts.transit_routing_domain -> "fun.packages"
  // parts.second_level_domain -> "gleam"
  // parts.top_level_domain -> "run"
  // parts.subdomain_parts -> ["fun", "packages"]
}

Credits

Licence

Apache-2.0

About

Accurately parse domains into parts

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages