Packages
zotonic_stdlib
1.9.0
1.31.2
1.31.1
1.31.0
1.30.1
1.30.0
1.29.1
1.29.0
1.28.1
1.28.0
1.27.0
1.26.1
1.25.0
1.24.0
1.23.1
1.23.0
1.22.0
1.21.0
1.20.3
1.20.2
1.20.1
1.20.0
1.19.0
1.18.0
1.17.0
1.16.0
1.15.1
1.15.0
1.14.0
1.13.0
1.12.0
1.11.2
1.11.1
1.11.0
1.10.0
1.9.0
1.8.0
1.7.0
1.6.0
1.5.11
1.5.10
1.5.9
1.5.8
1.5.7
1.5.6
1.5.5
1.5.4
1.5.3
1.5.2
1.5.1
1.5.0
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.3.2
1.3.1
1.3.0
1.2.11
1.2.10
1.2.9
1.2.8
1.2.7
1.2.6
1.2.5
1.2.4
1.2.3
1.2.2
1.2.1
1.2.0
1.1.0
1.0.3
1.0.2
1.0.1
1.0.0
1.0.0-alpha5
1.0.0-alpha4
1.0.0-alpha3
1.0.0-alpha2
1.0.0-alpha1
Zotonic standard library
Current section
Files
Jump to
Current section
Files
zotonic_stdlib
README.md
README.md

[](https://hex.pm/packages/zotonic_stdlib)
[](https://hex.pm/packages/zotonic_stdlib)
zotonic_stdlib
==============
Zotonic standard library - a library with hopefully useful functions
Extracted from Zotonic, the Erlang CMS http://zotonic.com/
Installation
------------
Due to historical reasons the library is called `z_stdlib`.
It should be checked out as `zotonic_stdlib`:
git clone https://github.com/zotonic/z_stdlib.git zotonic_stdlib
The library is also on Hex https://hex.pm/packages/zotonic_stdlib
In your rebar.config file, use Hex (for rebar3):
{deps, [
zotonic_stdlib
]}.
Or, directly git (rebar2):
{deps, [
{zotonic_stdlib, ".*", {git, "https://github.com/zotonic/z_stdlib.git", "master"}}
]}.
Modules
-------
The following modules are provided:
### z_convert
Conversion routines for:
* all common data types (binary, boolean, integer, etc.).
* dates: to_utc, to_local, iso8601 parsing
* json, convert to simple json constructs
* IP address conversions
### z_css
Strict CSS parser and sanitizer.
### z_cssmin
CSS minifier
### z_dateformat
Routines for formatting dates.
Example:
z_dateformat:format({{2008,12,10},{15,30,0}}, "Y-m-d H:i:s", [ {tz, "GMT"} ]).
### z_email_dnsbl
Check IP addresses for their presence on DNS block- or allowlists.
### z_email_utils
Test if an email address is syntactically valid. Extract email address from a text.
### z_filelib
Convenience function to make nested directories.
### z_html
HTML routines like escape, unescape, sanitize, etc.
### z_ip_address
Match an IP address against lists, check if an IP address is a non routable LAN address.
### z_jsmin
JavaScript minimizer, removes spaces, comments and newlines.
### z_string
String routines. To uppercase, lowercase, truncate, trim, utf8 checks, and more.
### z_svg
SVG sanitizer.
### z_tempfile
Temporary file routines. Make tempfiles, including watch dog process to clean up the file.
### z_ubf
UBF-A encoding and decoding routines. Safe for atoms and maximum memory size.
### z_url
URL encode, decode and more.
### z_url_fetch
Fetch the first N bytes of an URL. Protection against too large return body.
### z_url_metadata
Fetch an URL, extract metadata like mime type, title, description, images etc.
Tests
-----
To run the test set:
make test
All tests should pass.