relude-url
v0.4.0
Published
URL utilities with Relude
Downloads
94
Readme
relude-url
URL utilities with Relude
Documentation
ReludeURL
contains data structures and functions for dealing with URIs, URLs, etc. This library
is not currently fully conformant to the RFC 3986 URI spec - it only
parses a subset of common absolute URI formats, i.e. formats that are most commonly found in the wild. If you
encounter a URI
that ReludeURL
can't parse correctly, please open an issue with the URI
for consideration.
Component types
A URI is broken up into several sub-component types, including Scheme
, Authority
, UserInfo
, Path
, etc.
Parsing
ReludeURL
uses ReludeParse to parse URIs. To run a URI parser, you use
the standard convention for running a ReludeParse
parser, like below:
ReludeURL.URI.parser |> ReludeParse.runParser("https://example.com:80/my/path") // Belt.Result.Ok(URI(...))
Rendering
Once a URI
is parsed or constructed, it's often useful to write it back out to a string:
ReludeURL.URI.show(myURI) // http
Manipulation
Parts of the URI
can be manipulated using the functions from the target part of the URI
. A common operation is
to manipulate the query params - this can be done using functions in the URI
module, or in the Query
/QueryParam
/etc. modules.
Developer info
Scripts
> npm run clean
> npm run build
> npm run cleanbuild
> npm run test
> npm run cleantest
> npm run coverage
> npm run cleancoverage
> npm run watch
Publish to npm
> npm version major|minor|patch
> git push origin --follow-tags
> git push upstream --follow-tags
> npm publish
# Create release on GitHub
NixOS
A simple default.nix shell config is provided to avoid issues with OCaml-based binaries and bs-platform.
> nix-shell
%nix%> npm install